R
Ronsard
Gast
Fuer eines meiner Programme benoetige ich einige Zufallszahlen. Bis jetzt habe ich dafuer die Befehlszeile:
int wurf= (int) (Math.random()*wuerfelart);
verwendet. Die Variable wuerfelart gibt in diesem Fall die Seitenzahl des Wuerfels an. Fuer den Fall, dass die Variable wuerfelart = 6 gilt, wuerde diese Befehlszeile das Verhalten eines sechseitigen Wuerfels simulieren.
Inzwischen wurde mir aber gesagt, dass das Zufallsverhalten nur eingeschraenkt gueltig ist! Zufallswerte, die um den Nullbereich oder den Maximalbereich (in diesem Fall 6.0 und um einen gewissen Bereich darunter) liegen, werden gerundet und wuerden damit das Ergebnis verfaelschen. Die Rundung wird durch den Teil (int) erreicht und soweit ist mir alles klar. Ich frage mich nur, in welchen Faellen dort das Durchschnittsergebnis verfaelscht wird.
Endfrage:
Wie bekomme ich ein wirklich zufaelliges, ganzzahliges Ergebnis zustande?
int wurf= (int) (Math.random()*wuerfelart);
verwendet. Die Variable wuerfelart gibt in diesem Fall die Seitenzahl des Wuerfels an. Fuer den Fall, dass die Variable wuerfelart = 6 gilt, wuerde diese Befehlszeile das Verhalten eines sechseitigen Wuerfels simulieren.
Inzwischen wurde mir aber gesagt, dass das Zufallsverhalten nur eingeschraenkt gueltig ist! Zufallswerte, die um den Nullbereich oder den Maximalbereich (in diesem Fall 6.0 und um einen gewissen Bereich darunter) liegen, werden gerundet und wuerden damit das Ergebnis verfaelschen. Die Rundung wird durch den Teil (int) erreicht und soweit ist mir alles klar. Ich frage mich nur, in welchen Faellen dort das Durchschnittsergebnis verfaelscht wird.
Endfrage:
Wie bekomme ich ein wirklich zufaelliges, ganzzahliges Ergebnis zustande?