Relatório de temperatura
Em sistemas de monitoramento climático, sensores registram temperaturas diárias e geram relatórios com estatísticas como média, dias acima da média, maior e menor valor. Para isso, é comum percorrer os dados duas vezes: primeiro para calcular a média (precisa de todos os valores), depois para comparar cada dia com essa média e encontrar extremos. Dominar esse padrão de dois for evita recalcular totais e torna o código mais claro e eficiente.
O PROBLEMA
Declare array com temperaturas de 7 dias. Calcule média, dias acima da média, maior, menor e variação usando dois for.
EXEMPLO
[25,28,22,30,27,24,29] Média: 26.43, Acima: 4, Maior: 30, Menor: 22
SOBRE O CONCEITO
O exercício usa dois laços for para processar um array de temperaturas. No primeiro laço, você soma todos os elementos e depois divide pelo comprimento do array para obter a média. Esse cálculo deve ser concluído antes do segundo laço, pois ele depende do valor total da média. Um erro comum é tentar contar dias acima da média ou achar maior/menor dentro do mesmo laço que soma, o que resulta em comparações com uma média parcial ou inexistente (0). No segundo laço, você percorre o array novamente: compara cada temperatura com a média para incrementar o contador de dias acima, e usa uma lógica com if para atualizar maior e menor (inicialize maior como o menor valor possível, ex.: -Infinity, e menor como o maior, ex.: Infinity). Ao final, use toFixed(2) para arredondar a média para duas casas decimais. Esse padrão de dois for é essencial em relatórios que exigem um resumo estatístico baseado em todos os dados.
RESOLUÇÃO