Jump to content

Media de temperatura dos meses

 Read less than a minute

Recommended Posts

 Read less than a minute

#include <math.h>
#include<iostream>
#include<string>

using namespace std;
 
 int main(){
     string mes[12];
     float temp[12];
     float media ;
    int a,b;
     
     for(a=0;a<2;a++){
         cout<<"digite o  Mes que gostaria de usar :  "<<a+1<<endl;
         cin>>mes[a];
     
         for(b=0;b<1;b++){
             cout<<"Qual a temperatura dele?  "<<b+1;
             cin>>temp;
             
             media += temp;
         }
        
     
     }
    for(a=0;a<2;a++){
        cout<<mes[a]<<"TEVE A TEMPERATURA DE "<<temp<<a+1<<endl;
        
    }

 

 

ALGUEM PODE ME AJUDAR A FAZER A MEDIA DA TEMPERATURA DOS MESES E PRINTAR O NOME DOS MESES QUE ESTEJAM ACIMA DA TEMPERATURA?
     

Edited by ScolokD2
Link to post
Share on other sites
 Read 2 minutes

#include <math.h>
#include<iostream>
#include<string>

using namespace std;
 
 int main(){
     string mes[12];
     float temp[12];
     float media ;
    int a,b;
     
     for(a=0;a<2;a++){                                                                                         // Por que o for vai até < 2? não deveria ser < 12?
         cout<<"digite o  Mes que gostaria de usar :  "<<a+1<<endl;    // Não entendi mt bem essa msg, mes que eu gostaria de usar?
         cin>>mes[a];                                                                                                                                                                                                                              


         for(b=0;b<1;b++){                                                                                     // porq você utiliza um for que só vai rodar 1 vez?
             cout<<"Qual a temperatura dele?  "<<b+1;                                // temperado do mes que digitei antes?
             cin>>temp;                                                                                             // aqui você deveria ter especificado a posição em que vc vai armazenas a temperatura, talvez temp[a] ?.
             
             media += temp;                                                                                    // você não inicializou a variavel media, o que garante que já não exista um valor nela?
         }                                                                                                                     // é necessario divider media/meses lidos, ainda não entendi se vc vai ler todos os 12 meses ou só alguns.
        
     
     }
    for(a=0;a<2;a++){                                                                                                      //porq até seja menor que 2? não deveria ser 12?
        cout<<mes[a]<<"TEVE A TEMPERATURA DE "<<temp<<a+1<<endl;   // você não tinha que verificar quais meses estão acima da media antes de imprimir?
        
    }

 

Edited by SirFeliX
Link to post
Share on other sites
Posted (edited)
 Read 1 minute

entao, eu fui testando e so consegui chegar em um resultado meio certo assim

// Por que o for vai até < 2? não deveria ser < 12? 

R: pois estava fazendo testes e com o numero 12 ficava muito repetitivo e cansativo

// Não entendi mt bem essa msg, mes que eu gostaria de usar?

R: pq eu preciso linkar o mes a sua temperatura, ai a pessoa pode querer botar janeiro, março, fevereiro, mesmo que pra testar o programa

 // porq você utiliza um for que só vai rodar 1 vez?

R: realmente... n me recordo pq usei isso mas acho que e realmente desnecessario

 // temperado do mes que digitei antes?

R: isso, para linkar um mes a sua determinada temperatura

// aqui você deveria ter especificado a posição em que vc vai armazenas a temperatura, talvez temp[a] ?.

 

R: entao, n conheço muito bem de C++, ent n sei bem desses comandos

 // você não inicializou a variavel media, o que garante que já não exista um valor nela?

R: o "float media" n conta como variavel?

// é necessario divider media/meses lidos, ainda não entendi se vc vai ler todos os 12 meses ou só alguns.

R: serao todos os meses mesmo

   //porq até seja menor que 2? não deveria ser 12?

R: esse era um teste, mas o valor original era de 12 mesmo

  // você não tinha que verificar quais meses estão acima da media antes de imprimir?
        R: sim, porem nao sei como fazer isso ainda

 

 

Então, preciso de um programa  que receba a temperatura média de cada mês do ano e armazene-as em um vetor. e dps, calcule a média anual das temperaturas e mostre todas as temperaturas acima da média anual, e em que mês elas ocorreram

e nao to fazendo ideia de como linkar o mes e a temperatura, e dps filtrar para ver qual os que ficaram acima da media

se alguem puder me ajudar a arrumar esse programa... agradeço

 

C++

 

 

 

Edited by ScolokD2
Link to post
Share on other sites
 Read 1 minute

bem, fiz um "post" anteriormente com um progra

ma bem cheio de erros, mas fiz esse aqui que funciona como eu quero, gostaria apenas de "simplificar" ele, tipo diminuir 

#include <math.h>
#include<iostream>
#include<string>
#include <stdio.h>

using namespace std;
 
 int main(){
     string meses[12]={"janeiro", "fevereiro", "marco", "abril", "maio", "junho", "julho", "agosto", "setembro", "outubro", "novembro" ,"dezembro"};
     float temperatura[12];
     float media,somatoria;
     int i;
     
     
     for (i=0;i<12;i++){
     
        cout<<"Insira a temperatura dos meses  (janeiro a dezembro na sequencia certa!!) :  "<<i+1<<endl;
         cin>>temperatura;
         somatoria += temperatura;

     }
     media = somatoria/12;
     cout<<"A media e : "<<media<<endl;
     
    if (temperatura[0]>=media){
        cout<<meses[0]<<" esta acima da media (/-_-/)"<<endl;
         }
    
    if (temperatura[1]>=media){
        cout<<meses[1]<<" esta acima da media (/-_-/)"<<endl;
        }
    
    if (temperatura[2]>=media){
        cout<<meses[2]<<" esta acima da media (/-_-/)"<<endl;
         }

    if (temperatura[3]>=media){
        cout<<meses[3]<<" esta acima da media (/-_-/)"<<endl;
         }

    if (temperatura[4]>=media){
        cout<<meses[4]<<" esta acima da media (/-_-/)"<<endl;
         }

    if (temperatura[5]>=media){
        cout<<meses[5]<<" esta acima da media (/-_-/)"<<endl;
        }
    
    if (temperatura[7]>=media){
        cout<<meses[7]<<" esta acima da media (/-_-/)"<<endl;
         }

    if (temperatura[8]>=media){
        cout<<meses[8]<<" esta acima da media (/-_-/)"<<endl;
         }

    if (temperatura[9]>=media){
        cout<<meses[9]<<" esta acima da media (/-_-/)"<<endl;
         }

    if (temperatura[10]>=media){
        cout<<meses[10]<<" esta acima da media (/-_-/)"<<endl;
         }
    
    if (temperatura[11]>=media){
        cout<<meses[11]<<" esta acima da media (/-_-/)"<<endl;
         }
    
    if (temperatura[12]>=media){
        cout<<meses[12]<<" esta acima da media (/-_-/)"<<endl;
         }
     
 
}
 

Link to post
Share on other sites
 Read less than a minute
#include <math.h>
#include<iostream>
#include<string>
 
using namespace std;
 
int main(){
    string meses[12]={"janeiro", "fevereiro", "marco", "abril", "maio", "junho", "julho", "agosto", "setembro", "outubro", "novembro" ,"dezembro"};
    float temp[12]; //crio um array de float que armazena o valor da temp
    float media = 0; // inicializo a variavel media com valor 0
    int a;
 
    for(a=0;a<12;a++){ // percorro os 12 meses
        cout<<"Digite a temperatura do mes de "<< meses[a] << " : ";
        cin>>temp[a]; //leio a temperatura e armazeno no array
 
        media += temp[a]; // somo a temperatura lida a variavel média
 
    }
 
    media = media / 12; // divido a média por 12 (numero total de meses)
 
    cout << "A temperatua média é : " << media << endl; // imprimo valor da média
    for(a=0;a<12;a++){ // percorro todos os meses
        if(temp[a] > media) // se a temp do mes for maior que a media imprime.
            cout<<"O mes de " << meses[a] <<" teve a temperatura de "<< temp[a]<<endl;
    }
}
 
Edited by SirFeliX
Link to post
Share on other sites
 Read less than a minute

É exatamente como o outro loop, mas você usa temperatura para acessar a posição i do array. Ou seja, na primeira iteração, quando i==0, será array[0]. Na segunda, quando i==1, será array[1] e assim por diante.

	for (int i=0; i<12; i++) {
		if (temperatura[i] >= media)
			cout << "Temperatura de " << meses[i] << "está acima da média" << endl;
	}

Mas tem outro ajuste: no seu primeiro loop você fica somando a temperatura na média, mas não armazena o valor dela no array temperatura. Tem que armazenar, usando temperatura também.

O esquema é:

  • Um loop para pegar as temperaturas (preencher o array temperaturas).
  • O cálculo da média (fora do loop).
  • Um loop para dizer quais meses possuem temperaturas acima da média.

Abraço!

PS: Uni os tópicos que eram sobre o mesmo assunto.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...