02/06/09 17:43
AlesPalla
Premetto che ho iniziato oggi a programmare in c++.
Ho incontrato un errore che francamente non capisco in un ciclo for. Questo è il codice:
fun() è una funzione di un integer che da true o false a seconda di quale numero inserisco..
Facciamo un esempio:
Se tolgo il ciclo for e creo un programma fatto in queto modo:
la funzione funziona(scusate ) in maniera egregia per esempio stampando i valori 1,2,3 e 5 mentre non stampa il 4.Perfetto.
Ma quando faccio partire quella con il ciclo for mi visualizza solo 1,2 e 3 come se il ciclo, una volta che ha visto che con 4 non doveva stampare nulla, saltasse l'istruzione if facendo si che il 5 non venga visualizzato!!
Non ci stò capendo più nulla!!! Dove stà l'errore?Grazie in anticipo x le risposte
Ho incontrato un errore che francamente non capisco in un ciclo for. Questo è il codice:
int main(int argc, char *argv[]) { for(int n=1;n <= 100;n++){ if (fun(n)) printf("%d \n",n); } system("PAUSE"); return 0; }
fun() è una funzione di un integer che da true o false a seconda di quale numero inserisco..
Facciamo un esempio:
Se tolgo il ciclo for e creo un programma fatto in queto modo:
int main(int argc, char *argv[]) { if (fun(atoi(argv[1]))) printf("%d \n",atoi(argv[1])); system("PAUSE"); return 0; }
la funzione funziona(scusate ) in maniera egregia per esempio stampando i valori 1,2,3 e 5 mentre non stampa il 4.Perfetto.
Ma quando faccio partire quella con il ciclo for mi visualizza solo 1,2 e 3 come se il ciclo, una volta che ha visto che con 4 non doveva stampare nulla, saltasse l'istruzione if facendo si che il 5 non venga visualizzato!!
Non ci stò capendo più nulla!!! Dove stà l'errore?Grazie in anticipo x le risposte
Ultima modifica effettuata da AlesPalla 02/06/09 17:44
aaa