01. Es. svolto: media

Traccia:

Acquisire da tastiera una serie di numeri l'ultimo dei quali deve essere 0.

Calcolare la media e stampare il risultato.

Svolgimento:


#include <stdio.h>

int main()

{

int somma=0, conteggio=0, numero, media;

printf("Inserisci una serie di numeri interi separati da spazio.\nTermina con il numero 0\n");

scanf ("%d", &numero);

while (numero) {

somma=somma + numero;

conteggio++;

scanf ("%d", &numero);

}

if (conteggio) {

media = somma / conteggio;

printf("La media dei %d numeri inseriti e' %d\n",

conteggio, media);

return 0;

}

else {

printf("Nessun numero valido è stato inserito. Impossibile calcolare la media\n");

return 1;

}

}

scanf ("%d", &numero);

La funzione scanf() acquisisce un numero inserito tramite lo standard input (la tastiera). I numeri possono trovarsi indifferentemente tutti sulla stessa riga separati da spazio o essere distribuiti su righe differenti.


while (numero) {

...

}

La condizione di entrata nel ciclo while è numero (equivalente a numero!=0).

Notare che la variabile numero è aggiornata tramite la scanf() in due punti:

    • prima di entrare nel ciclo while

    • all'interno del ciclo

Il ciclo è ripetuto fin quando la scanf() non acquisisce il numero 0.