A cura di: Administrator
Scrivere un programma in linguaggio C che, letti da tastiera 10 numeri float, stampi:
- la media dei valori (float)
- ciascun valore con a fianco la sua differenza rispetto alla media, i valori devono essere visualizzati in ordine inverso rispetto a quello di acquisizione
Esempio: se si introducono nell’ordine i valori:
4.1 2.0 2.9 4.8 5.2 2.8 7.3 1.7 9.0 1.5
Il programma deve stampare:
Media = 4.13 1.5 -2.63 9.0 4.87 1.7 -2.43 ... ... 4.1 -0.03
Soluzione (download sorgente)
#include <stdio.h> #define FNUMS 10 int main(void) { int i; float media, totale = 0; float farray[FNUMS]; for (i = 0; i < FNUMS; i++) { scanf("%f", &farray[i]); totale += farray[i]; } media = totale * 1.0 / FNUMS; printf("Media = %.2fnn", media); for (i = (FNUMS - 1); i >= 0; i--) printf("%.1ftt% .2fn", farray[i], farray[i] - media); return 0; }
- Programmazione