Skip to main content

Die Ziehungen stammen aus der kryptografischen Zufallsquelle des Browsers, nicht aus Math.random — jedes Ergebnis ist gleich wahrscheinlich.

1

Warum der naheliegende Weg zur Zufallszahl leicht falsch ist

Einen großen Zufallswert per Rest zu verkleinern ist der übliche Trick — und er ist verzerrt. Teilt der Bereich die Quelle nicht glatt, bekommen manche Zahlen eine Chance mehr. Dieses Werkzeug verwirft solche Fälle und zieht neu, sodass jede Zahl im Bereich wirklich gleich wahrscheinlich ist.

So wird gerechnet

  • Zieht Zahlen aus jedem gesetzten Bereich, einzeln oder bis zu fünfzig auf einmal.
  • Zieht auf Wunsch ohne Wiederholung — das, was man für eine Verlosung oder einen Lottotipp braucht.
  • Nutzt crypto.getRandomValues() statt Math.random(), mit Rückweisung gegen den Modulo-Bias.
naiv:    Wert % Bereich          → verzerrt
korrekt: Grenze = floor(MAX / Bereich) × Bereich
         neu ziehen, solange Wert >= Grenze
         Ergebnis = min + (Wert % Bereich)

ohne Wiederholung: den ganzen Bereich mischen, die ersten n nehmen

Rechenbeispiel

Eine Zahl von 1 bis 3 aus einer Quelle, die 0, 1, 2 oder 3 liefert.

  1. naiv: 0→1, 1→2, 2→3, 3→1, also erscheint die 1 zweimal und erhält 50% statt 33%
  2. korrekt: Grenze = floor(4 / 3) × 3 = 3, eine gezogene 3 wird verworfen und neu gezogen
  3. die übrigen Ergebnisse 0, 1, 2 werden zu 1, 2, 3 mit je 1/3

Bei kleinen Bereichen und einer 32-Bit-Quelle ist die Verzerrung winzig, aber real; ihre Beseitigung kostet sehr selten eine zusätzliche Ziehung.

Das Ergebnis lesen

  • Ziehen ohne Wiederholung mischt den gesamten Bereich und nimmt die ersten n — das bleibt gleichverteilt. Wiederholtes Ziehen mit Verwerfen von Duplikaten wird schlecht, sobald der Bereich weitgehend aufgebraucht ist.
  • Der Bereich schließt beide Enden ein: 1 bis 100 kann 1 und kann 100 liefern.
  • Nichts wird übertragen. Die Ziehung passiert im Browser; kein Server sieht die Zahlen oder kann sie beeinflussen.

Häufige Fragen

Kann ich das für eine Verlosung nutzen?
Für eine informelle ja — sie ist unverzerrt und nichts verlässt Ihren Rechner. Bei rechtlicher oder finanzieller Tragweite nutzen Sie ein Verfahren mit prüfbarem Protokoll, denn eine Browser-Ziehung hinterlässt keinen Nachweis.
Gewinnt ein hier gezogener Lottotipp eher?
Nein. Jede Kombination hat dieselbe Chance, egal wie sie entsteht. Zufällig zu tippen heißt allerdings, den Jackpot seltener teilen zu müssen, weil Menschen sich auf Geburtstage und Muster häufen.