Random

  • Themenstarter Themenstarter stefan gürtz
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
S

stefan gürtz

Gast
Hallo,
wie sieht es mit der Wahrscheinlichkeit bei der Zufallsgenerator aus. z.B. wie hoch ist die Wahrscheinlichkeit
Random random = new Random();
random.nextInt(4);

,dass ich jetzt eine Zufallszahl 3 bekomme!Kann man das irgendwie abschätzen,damit man in eine while-Schleife abfragen kann

Danke
 
Das ist einfache Mathematik:

Random.nextInt(n) wählt eine Zahl zwischen 0...n => Wahrscheinlichkeit 1/n, dass eine der Zahlen gewählt wird.

Also bei Deinem Beispiel: Wahrscheinlichkeit bei Random.nextInt(4), dass die 3 kommt: 25%

Da es sich dabei jedoch nur um Pseudozufallszahlen handelt, ist das nicht die genaue sondern die ungefähre Wahrscheinlichkeit. Siehe dazu API:

All n possible int values are produced with (approximately) equal probability.
 
byto hat gesagt.:
Das ist einfache Mathematik:

Random.nextInt(n) wählt eine Zahl zwischen 0...n => Wahrscheinlichkeit 1/n, dass eine der Zahlen gewählt wird.

Also bei Deinem Beispiel: Wahrscheinlichkeit bei Random.nextInt(4), dass die 3 kommt: 25%

Da es sich dabei jedoch nur um Pseudozufallszahlen handelt, ist das nicht die genaue sondern die ungefähre Wahrscheinlichkeit. Siehe dazu API:

All n possible int values are produced with (approximately) equal probability.

Wie kann ich jetzt dann in eine Schleife abfragen?

Danke
 
weiss nicht ob ich dich richtig verstehe aber vll meinst ja folgendes:



Random random = new Random();
int i = 1;
while (random.nextInt(4) != 3)
{
i++;
}


System.out.println(i);
 
byto hat gesagt.:
lin hat gesagt.:
Also bei Deinem Beispiel: Wahrscheinlichkeit bei Random.nextInt(4), dass die 3 kommt: 25%
nö, ~20%, da n = 5 ( 0, 1, 2, 3, 4 )

Nö, der Parameter ist exklusive...

Returns a pseudorandom, uniformly distributed int value between 0 (inclusive) and the specified value (exclusive), drawn from this random number generator's sequence.

Ich habe z.B so eine Klasse:

public class example
{

public int zufallszahl(int wert)
{
Random random = new Random();
return random.nextInt(wert);
}

}

Mich interessiert aus welcher Zahl(wert) er eine Zufallszahl generiert hat. Ich muss halt irgendwie in eine andere Klasse diesen Wert finden.


Danke
 
Stefan gürtz hat gesagt.:
Mich interessiert aus welcher Zahl(wert) er eine Zufallszahl generiert hat.

Das geht nicht, weil er sich diesen Wert nicht merkt. Du mußt deinen Bereichswert schon vor
Aufruf der Methode speichern.
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben