Vamo lá! Mais um problema sendo resolvido e, agora, um da categoria Matemática!
Probleminha simples... bem simples!
Plataforma: URI (BEECROWD)
Problema: 1214
Enunciado:
Sabe-se que 90% dos calouros tem sempre a expectativa de serem acima da média no início de suas graduações. Você deve checar a realidade para ver se isso procede.
Linguagem: C
Solução:
Basta ler os valores, salvá-los em um array e acumular a soma deles, assim depois podemos dividir este valor acumulado por n (total de valores lidos) e assim conseguimos a média. Depois é só percorrer o array de alunos e contar quantos estão acima da média, multiplicar por 100 e dividir este valor por n. Claro, precisamos formatar a saída no formato que eles querem, pra isso eu usei %.3lf, garantindo que serão exibidos três casas decimais.
#include <stdio.h> int main() { int c, n, resposta; double media; scanf("%i", &c); while (c--) { scanf("%i", &n); int alunos[n]; int i = 0; media = 0; resposta = 0; while (i < n) { scanf("%d", &alunos[i]); media += alunos[i++]; } media /= n; i = 0; while (i < n) { if (alunos[i] > media) resposta++; i++; } printf("%.3lf%\n", 100 * resposta / (double) n); } return 0; }
Nenhum comentário:
Postar um comentário