Albi89
19-10-2007, 15:16
Salve a tutti!
Come ho scritto qualche giorno fa, mi stò affacciando da poco sul mondo della programmazione in C++ spronato anche dai corsi universitari che stò seguendo.
Stamattina ho creato un piccolo e semplicissimo giochino della roulette, che allego QUI (http://www.snapdrive.net/qs/87ac4848eec0).
Sono decisamente soddisfatto visto che è il primo programmino semi-serio che scrivo (qualcosa di diverso da un "hello world", insomma), tuttavia ci sono un po' di problemi...
A prescindere dai problemi dovuti semplicemente alla mia inesperienza (sono stato costretto ad usare un array per descrivere un numero della roulette estratto con le sue caratteristiche, mentre immagino sarebbe stata più adatta una classe), ho un problema che rende il programma soggetto a comportamenti inspiegabili.
In pratica, nella sezione di codice
do { //La puntata va rieseguita finchè non si inseriscono valori accettabili
cout <<"Vuoi puntare pari o dispari? (1 per pari, 2 per dispari) ";
cin >> puntata[1];
cout << endl;
}
while (puntata[1] != 1 && puntata[1] != 2);
Si inserisce un intero diverso da 1 o 2, tutto va bene e viene chiesto di inserire nuovamente il numero, mentre se per caso si inserisce una stringa testuale il programma "impazzisce" continuando a chiedere "vuoi puntare su..." ma senza permettere nuovamente l'inserimento del testo!
Da cosa dipende?
Grazie a tutti! =)
Come ho scritto qualche giorno fa, mi stò affacciando da poco sul mondo della programmazione in C++ spronato anche dai corsi universitari che stò seguendo.
Stamattina ho creato un piccolo e semplicissimo giochino della roulette, che allego QUI (http://www.snapdrive.net/qs/87ac4848eec0).
Sono decisamente soddisfatto visto che è il primo programmino semi-serio che scrivo (qualcosa di diverso da un "hello world", insomma), tuttavia ci sono un po' di problemi...
A prescindere dai problemi dovuti semplicemente alla mia inesperienza (sono stato costretto ad usare un array per descrivere un numero della roulette estratto con le sue caratteristiche, mentre immagino sarebbe stata più adatta una classe), ho un problema che rende il programma soggetto a comportamenti inspiegabili.
In pratica, nella sezione di codice
do { //La puntata va rieseguita finchè non si inseriscono valori accettabili
cout <<"Vuoi puntare pari o dispari? (1 per pari, 2 per dispari) ";
cin >> puntata[1];
cout << endl;
}
while (puntata[1] != 1 && puntata[1] != 2);
Si inserisce un intero diverso da 1 o 2, tutto va bene e viene chiesto di inserire nuovamente il numero, mentre se per caso si inserisce una stringa testuale il programma "impazzisce" continuando a chiedere "vuoi puntare su..." ma senza permettere nuovamente l'inserimento del testo!
Da cosa dipende?
Grazie a tutti! =)