16/10/09 16:03
Matthew
Allora il problema e' che nel codice dei tuoi dieci tentativi non viene riletto nessun nuovo numero. In pratica l'utente inserisce un nuovo numero, e il programma controlla dieci volte se quel numero e' corretto. Chiaramente questo non ha senso.
Il case 2 va riscritto cosi'
case 2:
{
for (t=1;t<=10;t++)
{
printf("\nIndovina il numero magico! = ")
scanf("%d",&guess);
if (guess==magic)
{
printf("\nGIUSTO!!!");
system("PAUSE");
return 0;
}
else if (guess<magic)
printf("\nTROPPO PICCOLO");
else printf("\nTROPPO GRANDE");
}
printf("HAI FINITO I TENTATIVI!");
}
break;
Prova cosi', dovrebbe andare...
Ultima modifica effettuata da Matthew 16/10/09 16:03
aaa
16/10/09 16:11
oretovalley
Postato originariamente da Matthew:
Allora il problema e' che nel codice dei tuoi dieci tentativi non viene riletto nessun nuovo numero. In pratica l'utente inserisce un nuovo numero, e il programma controlla dieci volte se quel numero e' corretto. Chiaramente questo non ha senso.
Il case 2 va riscritto cosi'
case 2:
{
for (t=1;t<=10;t++)
{
printf("\nIndovina il numero magico! = ")
scanf("%d",&guess);
if (guess==magic)
{
printf("\nGIUSTO!!!");
system("PAUSE");
return 0;
}
else if (guess<magic)
printf("\nTROPPO PICCOLO");
else printf("\nTROPPO GRANDE");
}
printf("HAI FINITO I TENTATIVI!");
}
break;
Prova cosi', dovrebbe andare...
anche se il case 2 è scritto male il problema sta nel case 1 perchè lui esegue questa istruzione:
case 1: rand()%100;
break;
cioè genera un numero casuale, ma non lo assegna a magic, quindi resta sempre fisso come generato all'inizio se non scrive:
case 1: magic=rand()%100;
break;
Ultima modifica effettuata da oretovalley 16/10/09 16:12
aaa
17/10/09 8:02
Matthew
Devi scrivere code racchiuso tra parentesi quadre prima del codice e code preceduto da "/" e racchiuso tra quadre alla fine.
Ultima modifica effettuata da Matthew 17/10/09 8:04
aaa