getkm.c (1535B)
1 /* Esercizio 3.17 (Cap. 3) 2 * Mostra i Km per litro di ogni tanta e, infine, di tutte le tange assieme. 3 * 4 -*- Pseudo-codice -*- 5 Primo raffinamento: 6 Prende i Km percorsi e i litri utilizzati per ogni pieno. 7 Calcola i Km per litro di ogni pieno 8 Calcola i Km per litro totali 9 10 Secondo raffinamento: 11 Inizializzo il totale dei Km 12 Inizializzo il totale dei Litri 13 14 prendi il numero dei litri (o il valore dummy) 15 prendi il numero dei Km 16 17 Finche' non viene immesso il valore dummy 18 dividi i km inseriti per i litri inseriti 19 stampa il risultato 20 salva la somma dei litri 21 salva la somme dei Km 22 23 prendi il numero dei litri (o il valore dummy) 24 se non e' stato inserito il valore dummy 25 prendi il numero dei Km 26 27 dividi il totale dei Km per il totale dei Litri 28 stampa il risultato 29 -*- Fine Pseudo-codice -*- 30 */ 31 32 #include <stdio.h> 33 34 int main() 35 { 36 int tot_km=0, km; /* Kilometri */ 37 float tot_litri=0, litri; /* Litri */ 38 39 printf("Numero di litri utilizzati (-1, esce): "); 40 scanf("%f", &litri); 41 42 /* Calcolo i Km/l per il pieno corrente */ 43 while(litri != -1) { 44 printf("Numero di Km percorsi: "); 45 scanf("%d", &km); 46 tot_litri += litri; 47 tot_km += km; 48 49 printf("Km percorsi per litro: %f\n\n", km / litri); 50 51 printf("Numero di litri utilizzati (-1, esce): "); 52 scanf("%f", &litri); 53 } 54 55 /* Calcolo i Km/l per il totale dei pieni */ 56 printf("Totale Km/l: %f\n", tot_km / tot_litri); 57 58 59 } /* E0F main */ 60