Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Ciclo di numeri casuali in c++ senza far uscire i numeri già usciti
Forum - C/C++ - Ciclo di numeri casuali in c++ senza far uscire i numeri già usciti

Avatar
luca94 (Normal User)
Pro


Messaggi: 71
Iscritto: 07/05/2008

Segnala al moderatore
Postato alle 14:41
Mercoledì, 11/02/2009
Salve a tutti,
vorrei sapere se è possibile creare un programma che, in un ciclo, generi numeri casuali senza ke vengano estratti i numeri ke già sono stati estratti, il programma è questo:
Codice sorgente - presumibilmente C++

  1. #include <ctime>
  2. #include <iostream>
  3. using namespace std;
  4. int main()
  5. {
  6.     int a;
  7.     srand((unsigned)time(NULL));
  8.     for (int b = 0; b < 20; b++)
  9.     {
  10.         a = rand()% 20;
  11.         cout << a << endl;
  12.     }
  13.     system("pause>nul");
  14. }


Solo che mi dà numeri talvolta uguali...
I cicli devono essere per forza 20 e il massimo de numeri generati sempre 20....


eb 04 af c2 bf a3 81 ec     00 01 00 00 31 c9 88 0c

0c fe c1 75 f9 31 c0 ba     ef be ad de 02 04 0c 00

d0 c1 ca 08 8a 1c 0c 8a     3c 04 88 1c 04 88 3c 0c

fe c1 75 e8 e9 5c 00 00     00 89 e3 81 c3 04 00 00

00 5c 58 3d 41 41 41 41     75 43 58 3d 42 42 42 4
PM Quote
Avatar
theprogrammer (Normal User)
Guru^2


Messaggi: 2509
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 16:34
Mercoledì, 11/02/2009
Inseriscili in un array (o in un vector) e subito dopo averlo generato, cerca nell'array.


- Se le mie risposte non vi soddisfano, ignoratele, altrimenti un "grazie" e' molto gradito ...

"Dai un pesce (programma) a un uomo e lo nutrirai per un giorno. Insegnagli a pescare (programmare) e lo nutrirai per tutta la vita." (niente pappa pronta)
PM Quote
Avatar
gioser (Normal User)
Pro


Messaggi: 111
Iscritto: 03/10/2008

Segnala al moderatore
Postato alle 18:28
Mercoledì, 11/02/2009
altrimenti, se ti bastano dei numeri pseudo-casuali, puoi  implementare un linear feedback shift register

http://en.wikipedia.org/wiki/Linear_feedback_shift_register

PM Quote