c# - Wahrscheinlichkeit und random zahlen

Ich habe gesehen, diese Frage stellten sich in eine Reihe von Möglichkeiten, aber ich brauche nur einen sanity-check von dem, was ich hier mache.

Grundsätzlich möchte ich ein Ereignis auslösen, mit einer Wahrscheinlichkeit von 25% auf eine zufällig generierte Zahl zwischen 1 und 100 mit:

int rand = random.Next(1,100);

Werden die folgenden erreichen?

if (rand<=25)
{
    //Some event...
}

Ich dachte, ich würde verwenden Sie eine Zahl zwischen 1 und 100, so dass ich optimieren können, sind die Wahrscheinlichkeiten, die später - z.B. passen zu 23% durch die Verwendung

if (rand<=23) {...}

Dank für das ansehen.

  • Haben Sie es ausprobiert? Es sollte gut funktionieren. Nur vorsichtig sein, Sie müssen nicht neu erstellen, viele Random Instanzen in einem kurzen Zeitfenster, oder Sie wird wieder die gleiche "zufällige" Ergebnis.
  • Ich will nicht zu verwenden, 1, um 4 als ich das Spiel später, wenn es sein muss, aber ja, 1,4 wäre das gleiche. Dank Scott, ich verpasst, dass.
  • Das klingt ungefähr richtig.
  • Ja, ich habe diesen Fehler gemacht, eine Woche oder so vor - ich erstelle das random-Objekt als Instanz-variable, dies zu umgehen.
InformationsquelleAutor CdrTomalak | 2012-04-09
Schreibe einen Kommentar