View Single Post
Old 11-10-2007, 11:14   #2
yorkeiser
Senior Member
 
L'Avatar di yorkeiser
 
Iscritto dal: Jul 2006
Città: Tristram
Messaggi: 517
Allora:

- In primo luogo, ti consiglio di studiare gli array; ti risparmieresti un sacco di codice da scrivere. Per scrivere un semplice programmino hai dovuto incollare una pagina di codice, non ti pare un po' troppo?

- L'errore è qui, ed è duplice:
Codice:
crit4 = num/1000;
crit3 = num/100 - cif4 * 10;
crit2 = num/10 - cif3 * 10 - cif4 * 100;
crit1 = num/1 - cif2 * 10 - cif3 * 100 - cif4 * 1000;
1) Il primo è concettuale: hai dichiarato cif1,2,3,4 e li utilizzi nella parte destra di queste espressioni ma NON LI HAI INIZIALIZZATI; mai utilizzare una variabile in c/c++ senza prima averla inizializzata. Ad esempio:
Codice:
 cif1 = cif2 = cif3 = cif4 = 0 ;
2) crit3 deve essere = num/100 - crit3*10, non cif3
Lo stesso vale per crit2 e crit1: devi sempre usare critX, e non cifX nelle espressioni a destra dell'uguale

Impara ad usare gli array!
Ciao
__________________
Il sole è giallo
yorkeiser è offline   Rispondi citando il messaggio o parte di esso