Riccardo88
12-11-2009, 18:23
Ciao, ho il seguente problema:
Sto scrivendo un programma che calcoli le vincite del super enalotto e che calcoli n giocate sempre con la stessa combinazione giocata per fare una stima di quante volte si è vinto e quali premi.
Ora:
In una funzione chiamata void estrazione(); ho un array estratti[SIZE] che prende 6 valori da rand() % 90 + 1 tramite srand( (unsigned) time( NULL );
Quindi la funzione scritta nell'unità di progetto header.cpp è richiamata nel main.cpp tramite il solito #include "header.h"
A questo punto nel main.cpp ho un ciclo
for( k = 0; k < roll; k++ ){ estrazione(); } che avrebbe il compito di calcolare i risultati delle giocate e assegnare i punteggi ad eventuali vincite ed infine stampare quante volte si è vinto e quali premi.
Mi funziona tutto, tutto tranne il fatto che la funzione richiamta nel main all'interno del ciclo non aggiorna la serie di numeri estratti, quindi i numeri giocati dall'utente si confrontano sempre con la stessa estrazione che viene stampata n volte invece di essere avviata n volte.
Ora se rand(); si trova all'interno di un ciclo mi aggiorna i valori random ma se inserisco le variabili alla quale è associata rand() allinterno di uan funzione e metto quest'ultima in un ciclo i valori non vengono aggiornati...In pratica come si fa a far aggioranre dei valori random che non si trovano direttamente in un ciclo ma in una funzione la quale a sua volta si trova dentro un ciclo?
Grazie.
Sto scrivendo un programma che calcoli le vincite del super enalotto e che calcoli n giocate sempre con la stessa combinazione giocata per fare una stima di quante volte si è vinto e quali premi.
Ora:
In una funzione chiamata void estrazione(); ho un array estratti[SIZE] che prende 6 valori da rand() % 90 + 1 tramite srand( (unsigned) time( NULL );
Quindi la funzione scritta nell'unità di progetto header.cpp è richiamata nel main.cpp tramite il solito #include "header.h"
A questo punto nel main.cpp ho un ciclo
for( k = 0; k < roll; k++ ){ estrazione(); } che avrebbe il compito di calcolare i risultati delle giocate e assegnare i punteggi ad eventuali vincite ed infine stampare quante volte si è vinto e quali premi.
Mi funziona tutto, tutto tranne il fatto che la funzione richiamta nel main all'interno del ciclo non aggiorna la serie di numeri estratti, quindi i numeri giocati dall'utente si confrontano sempre con la stessa estrazione che viene stampata n volte invece di essere avviata n volte.
Ora se rand(); si trova all'interno di un ciclo mi aggiorna i valori random ma se inserisco le variabili alla quale è associata rand() allinterno di uan funzione e metto quest'ultima in un ciclo i valori non vengono aggiornati...In pratica come si fa a far aggioranre dei valori random che non si trovano direttamente in un ciclo ma in una funzione la quale a sua volta si trova dentro un ciclo?
Grazie.