PDA

Visualizza la versione completa : [C++] assegnare numeri casuali a delle variabili


quit10
14-04-2009, 14:01
Salve a tutti!
Ho un problema: ho creato una funzione seme che crea un numero casuale da 0 a 3:


int seme()
{
int smcasuale;
srand(time(NULL));
smcasuale = rand()%3;
return smcasuale;
}

poi ho assegnato a cinque variabili smcarta questo numero casuale:


int main()
{

int smcarta1=seme();
int smcarta2=seme();
int smcarta3=seme();
int smcarta4=seme();
int smcarta5=seme();
return 0;
}


ogni variabile però mi restituisce lo stesso numero casuale, non un numero casuale per ogni variabile.
Qualcuno sa spiegarmi perchè?
Come faccio ad assegnare ad ogni variabile un numero casuale DIVERSO??
Grazie in anticipo!

MacApp
14-04-2009, 14:21
chiama srand(time(NULL)); solo una volta, non tutte le volte..

quit10
14-04-2009, 14:25
Grazie mille!!
Però non capisco perchè, cosa vuol dire srand (time(NULL))??

MItaly
14-04-2009, 16:28
Vuol dire "inizializza il generatore di numeri casuali usando come seme il numero si secondi trascorsi dall'1/1/1970".

oregon
15-04-2009, 11:41
Originariamente inviato da quit10
Grazie mille!!
Però non capisco perchè, cosa vuol dire srand (time(NULL))??

Come fai ad utilizzare cose che non hai mai studiato prima?

http://www.cplusplus.com/reference/clibrary/cstdlib/srand/

quit10
15-04-2009, 14:50
Il fatto è che sto imparando il C++, ho letto un po' di guide online e ora cerco di trovare degli esempi da cui imparare, in questo caso ho trovato un esempio che genera un numero casuale e l'ho applicato al mio programma.
Comunque grazie MItaly, adesso ho capito!
:ciauz::ciauz:

Loading