PDA

View Full Version : [c++]Perche non va avanti!


rnuzzo
15-05-2009, 19:30
Ragazzi perche dopo il while il programma non fa niente?
#include <iostream>

using namespace std;

int main()
{
double totGiorni[6] = {0};
char sceltaProdotto;
int sceltaQuantita = 0;

double vendutoGiorno = 0;
double vendutoSettimana = 0;

cout << "Costo Prodotto A: 2.98\n" << "Costo Prodotto B: 4.50\n" << "Costo Prodotto C: 9.98\n" << "Costo Prodotto D: 4.49\n" << "Costo Prodotto E: 6.87\n\n";




for ( int i = 0; i < 6 ;i++ )
{
//Apertura del giorno

cout << "Inserire il codice prodotto :";
cin >> sceltaProdotto;

if ( sceltaProdotto == 'q' || sceltaProdotto == 'Q')
{
return 0;
}

cout << "Quante sono le unita' che hai venduto? :";
cin >> sceltaQuantita;

//Ciclo infinito per gli input e relativi calcoli, che interessano variabili temporanee
while(1)
{
switch (sceltaProdotto)
{
case 'a':
case 'A':
vendutoGiorno += 2.98 * sceltaQuantita;//Aggiungere, non riassegnare :P
break;

case 'b':
case 'B':
vendutoGiorno += 4.50 * sceltaQuantita;
break;

case 'c':
case 'C':
vendutoGiorno += 9.98 * sceltaQuantita;
break;

case 'd':
case 'D':
vendutoGiorno += 4.49 * sceltaQuantita;
break;

case 'e':
case 'E':
vendutoGiorno += 6.87 * sceltaQuantita;
break;

default :
cout << "Scelta non valida\n";
break;
}
}


//Chiusura del giorno, salvataggio delle variabili temporanee nell'array e stampa dei risultati giornalieri
totGiorni[i] = vendutoGiorno;

}

//Chiusura totale della settimana, stampa di tutti i risultati

cin.get();
return 0;

}

||ElChE||88
15-05-2009, 19:33
Se è un ciclo infinito devi anche uscire in qualche modo eh...
Il break esce dallo switch, non dal while (ma poi a cosa serve quel while?).

rnuzzo
15-05-2009, 19:41
Devo verificare se nel giorno corrente devo aggiungere altri prodotti.
Dopo il while non viene eseguito lo switch?

||ElChE||88
15-05-2009, 19:49
Devo verificare se nel giorno corrente devo aggiungere altri prodotti.
Dopo il while non viene eseguito lo switch?
Eh?
Tu controlla bene, vedi qualche modo per uscire da quel while?

MadJackal
15-05-2009, 19:59
Devo verificare se nel giorno corrente devo aggiungere altri prodotti.
Dopo il while non viene eseguito lo switch?

Eh?
Tu controlla bene, vedi qualche modo per uscire da quel while?

il while(1) è in effetti infinito.
Non vedo istruzioni "break" per uscirne neppure io. ;)

rnuzzo
15-05-2009, 20:01
E vero!!!!!!!!!!!!:doh:
me ne sono accorto solo ora e tu lo confermi!!Grazie!!:D