PDA

Visualizza la versione completa : [C] Programma calcolo consumi carburante e visualizzazione output


alengy
09-04-2006, 13:26
Ciao a tutti..
Sto sperimentando da newbie un semplice programmino in C per calcolare i consumi di carburante della mia auto..

Se scrivo però:

#include <stdio.h>
#include <stdlib.h>

main ()

{
float p; /* prezzo pagato al benzinaio */
float cl; /*prezzo al litro della benzina */
float sl; /* sconto al litro della benzina */
float lr; /* litri riforniti dalla pompa di benzina */
float kp; /* kilometri percorsi in totale dalla data del rifonimento */
float kl; /* kilometri percorsi al litro */
float lk; /* consumo di litri benzina ogni 100 km */

printf("Ciao, dimmi quanto hai pagato al benzinaio per il rifornimento del carburante\n"); //inserisco la somma pagata al benzinaio
scanf("%f", &p);

printf("Ok, adesso dimmi quanto ti e' costato al litro il carburante\n");
scanf("%f", &cl);

printf("Ok, adesso dovresti dirmi lo sconto applicato al litro di carburante\n");
scanf("%f", &sl);

printf("ciao");
}

Il problema è che appena inserisco il valore alla variabile sl all'invio il programma termina ed esce dal prompt...
Chi mi aiuta? Non riesco a capire perchè..
__________________
Sistemista Cisco CCNA - studente per certificazione Microsoft MCSE :dhò:

perzem
09-04-2006, 13:51
il programma non mi pare contenga errori e se nn lo esegui da prompt per forza esce quando inserisci l'ultimo dato...

oregon
09-04-2006, 13:53
Dopo la printf inserisci un

system("PAUSE");

Se n'e' parlato tanto ...

alengy
09-04-2006, 14:04
Ok del pause sapevo la sua funzionalità..
Ma se io su quelle variabili a cui assegno un valore ci voglio calcolare il risultato di altre 3 variabili dichiarate sopra il programma mi esce lo stesso e non va avanti nel processare il codice..Cosa posso fare?

oregon
09-04-2006, 14:11
No ... non ho capito cosa vuoi dire ...

Se vuoi fare un calcolo, lo devi scrivere nel codice ...

alengy
09-04-2006, 14:14
Per me nn è facile spiegarmi perchè sn all'inizio in C.. :dhò:
Per esempio l'istruzione printf("ciao") finale non la esegue e termina prima, cioè dopo l'inserimento della terza variabile..

oregon
09-04-2006, 14:16
Allora non mi sono spiegato ...

Quella istruzione la esegue e termina ... ed e' cosi' veloce che tu non la vedi. Per questo devi inserire la system("PAUSE");

Oltre a sapere a cosa serve, l'hai inserita? Se non lo fai, possiamo stare qui a discutere un anno senza risolvere ...

alengy
09-04-2006, 14:25
Ho risolto grazie!! Grazie per la pazienza..


#include <stdio.h>
#include <stdlib.h>

main()

{
float p; /* prezzo pagato al benzinaio */
float cl; /*prezzo al litro della benzina */
float sl; /* sconto al litro della benzina */
float lr; /* litri riforniti dalla pompa di benzina */
float kp; /* kilometri percorsi in totale dalla data del rifonimento */
float kl; /* kilometri percorsi al litro */
float lk; /* consumo di litri benzina ogni 100 km */

printf("Ciao, dimmi quanto hai pagato al benzinaio per il rifornimento del carburante\n"); //inserisco la somma pagata al benzinaio
scanf("%f", &p);

printf("Ok, adesso dimmi quanto ti e' costato al litro il carburante\n");
scanf("%f", &cl);

printf("Ok, adesso dovresti dirmi lo sconto applicato al litro di carburante\n");
scanf("%f", &sl);

lr = p/(cl-sl);
printf("litri erogati: %f", lr);

system("pause");
} :ciauz: :ciauz:

oregon
09-04-2006, 14:32
Ecco ... vedi, bastava un po' di pazienza ... se non ne hai (e molta ...), la programmazione non fa per te ... :ciauz:

alengy
09-04-2006, 14:37
E' da poco che ho iniziato il C.. devo ancora entrare bene nell'ottica ma con il tempo e con PAZIENZA come dici tu.. arriverò almeno a capire le basi.

Grazie per il suggerimento intanto. :yuppi:

Loading