Escreva um programa para ler e armazenar em um vetor a temperatura média dos últimos X dias, onde a quantidade de dias a ser cadastrada será informada pelo usuário. Esta quantidade será o tamanho do vetor. Calcule e escreva na tela:
a. Menor temperatura
b. Maior temperatura
c. Temperatura média
d. O número de dias em que a temperatura foi inferior à média
Nós não resolvemos exercícios. Qual sua dúvida?
a duvida é como vou vou adicionar o numero de dias quando a temperatura foi inferior a media . ta dando 0 ou 1 sempre.
Bem, é uma comparação em que se o resultado for verdadeiro, você acrescerá um contador.
Você vai, primeiro, descobrir a média. Depois, vai pegar seu array, andar por ele inteiro e toda vez que achar um dia em que a temperatura for inferior a média, você acresce um contador. No final, a quantidade de dias em que a temperatura foi inferior à média vai ser o número do seu contador.
Uma dica de verdade para você: Seu código está horrível. Como espera que qualquer pessoa que não seja você vai saber o que é a varíavel d, mA, mE, tp, cMA, m, s ou cME?
Você tem que deixar seu código mais semântico. Depois que lemos e interpretamos até dá para entender com relativa dificuldade, mas até aí vc já deu o trabalho de ter que imaginar e interpretar cada variável. Pra você fazer perfeito sentido, afinal, você que tá fazendo. Mas para o observador externo não. Comece deixando o nome das variáveis melhor (não precisa economizar em nome. Se aquela variável representa uma temperatura, chame ela de temperatura. Se representa uma média de, por exemplo, dias, chame-a de mediaDias. O importante é dar pra entender.)
[]'s
tava deixando pra formatar depois , mas obrigado pela dica msm assim .
Entendo. Mas faça isso em tempo de desenvolvimento e terá menos problemas.
/**
* Escreva um programa para ler e armazenar em um vetor a temperatura média dos últimos X dias,
* onde a quantidade de dias a ser cadastrada será informada pelo usuário. Esta quantidade será o tamanho do vetor.
* Calcule e escreva na tela:
* a. Menor temperatura
* b. Maior temperatura
* c. Temperatura média
* d. O número de dias em que a temperatura foi inferior à média
*/
import java.util.Scanner;
public class exercicio {
public static void main(String[] args) {
double[] temperaturas; //Declaramos um array de temperaturas do tipo double;
double maiorTemperatura = 0;
double menorTemperatura = 999999;
double somaDasTemperaturas = 0;
Scanner scan = new Scanner(System.in);
System.out.println("Digite a quantidade de dias");
temperaturas = new double[scan.nextInt()]; // Nessa linha, estamos dizendo que o próximo valor digitado será o tamanho do array de temperaturas.
for (int i = 0; i < temperaturas.length; i++) {
System.out.println("Digite a temperatura do " + (i + 1) + "° dia"); // Se não entendeu, pesquise por manipulação de Strings.
temperaturas[i] = scan.nextDouble();
somaDasTemperaturas += temperaturas[i];
}
double mediaDasTemperaturas = somaDasTemperaturas / temperaturas.length;
int diasQueATemperaturaFoiMenor = 0;
for (int i = 0; i < temperaturas.length; i++) {
if (temperaturas[i] > maiorTemperatura) {
maiorTemperatura = temperaturas[i];
}
else if (temperaturas[i] < menorTemperatura) {
menorTemperatura = temperaturas[i];
}
if (temperaturas[i] < mediaDasTemperaturas) {
diasQueATemperaturaFoiMenor++;
}
}
System.out.println("A maior temperatura foi: "+ maiorTemperatura + "°C");
System.out.println("A menor temperatura foi: "+ menorTemperatura +"°C");
System.out.printf("A temperatura média foi: %.2f", mediaDasTemperaturas , "°C\n");
System.out.println(diasQueATemperaturaFoiMenor + " dias se passaram com a temperatura abaixo da média.");
}
}
Qualquer dúvida, pode perguntar.
[]'s
Ok muito obrigado ;).