Random Number Generator < Stochastik < Hochschule < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 22:24 Sa 29.03.2008 | Autor: | mmartin |
Hallo!
Ich habe einen Random Number Generator (Mersenne Twister) nur leider habe ich das Wenige was ich über die Wahrscheinlichkeitsrechnung wusste schon vergessen.
Folgendes Problem:
Der Generator spuckt 32Bit Zufallszahlen aus. Ich bin aber nur an den Zahlen von 0 bis 15 interessiert. Jetzt frage ich mich, ob ich die 32Bit Zahl mit dem Modulo-Operator einfach auf den Range von 0 bis 15 normieren darf:
int myNbr = Rand.GiveNumber() % 15;
Darf ich das machen, oder hat das Einfluss auf die Verteilung? (Die Frage mag lächerlich erscheinen, aber es ist von immenser Bedeutung, dass diese 16 Zahlen wirklich gleichmäßig verteilt generiert werden.)
(Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt)
Danke,
Mario M.
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 23:10 Sa 29.03.2008 | Autor: | Gilga |
Das ist kein Problem.
Sollte aber
int myNbr = Rand.GiveNumber() % 16;
heißen.
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 13:01 So 30.03.2008 | Autor: | mmartin |
Vielen Dank!
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 16:35 Mi 09.04.2008 | Autor: | Gilga |
Kleiner Nachtrag:
Das ganze funktioniert, da [mm] 2^4 [/mm] ein Teiler von 2^32 ist.
Hättest du einen Bereich gewählt der keine 2er Potenz ist, müsste es Zahlen aus diesem Bereich geben in die mehrere 32Bit Zufallszahlen abgebildet werden als andere.
|
|
|
|