Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: random in c++ geeft iedere keer dezelfde waarden.  (gelezen 2855 keer)

Offline bart85

  • Lid
random in c++ geeft iedere keer dezelfde waarden.
« Gepost op: 2018/03/03, 14:05:54 »
Met onderstaande probeer ik een random tussen 0 tot n te geven. Het geeft wel random een waarde. Start ik het programma daarna opnieuw dan geeft het waarden in dezelfde volgorde. Het word gebruikt in een quiz. Met random wil ik willekeurig een vraag stellen. Gewoon woordjes overhoren.
pVragenlijst = new int [n]; //lijst van overige nummers van het gevraagde woord.
for(int i=0;i<n;i++){
pVragenlijst[i]=i;
//is hier gedeclareerd.
r = rand() %n;
//verwijdert element n van pVragenlijst.
//decrement n
Je leert maar mooi over weg gaan met de commandline.
Linus: "I'm happy with the people who are wandering around looking at the stars but I am looking at the ground and I want to fix the pothole before I fall in."
I look to the clouds behind me and see the thunder coming.

Offline bart85

  • Lid
Je leert maar mooi over weg gaan met de commandline.
Linus: "I'm happy with the people who are wandering around looking at the stars but I am looking at the ground and I want to fix the pothole before I fall in."
I look to the clouds behind me and see the thunder coming.

Offline niekn

  • Lid
    • omega-xis
Re: random in c++ geeft iedere keer dezelfde waarden.
« Reactie #2 Gepost op: 2018/03/13, 09:07:46 »
Hier staat wat er moet worden verbeterd:
https://stackoverflow.com/questions/9459035/why-does-rand-yield-the-same-sequence-of-numbers-on-every-run

jup random heeft een "seed" nodig om daadwerkelijk random te zijn (anders is t gewoon een berekening).
in dit voorbeeld wordt de systeemklok als seed gebruikt, bij mij op werk programmeren we een systeem dat geen hardwareklok heeft, wij halen dus onze seed uit metingen elders in t systeem.
https://en.wikipedia.org/wiki/Random_seed