Zufallszahlengenerator
Eine oder mehrere zufällige Ganzzahlen oder Dezimalzahlen in einem benutzerdefinierten Bereich erzeugen.
Verteilung der erzeugten Werte
So funktioniert es
Der Zufallszahlengenerator erzeugt gleichmäßig verteilte zufällige Ganzzahlen (oder Dezimalzahlen) in einem beliebigen Bereich, den du wählst, aus crypto.getRandomValues deines Browsers — der kryptographisch sicheren Zufallsquelle. Setze ein Minimum und Maximum, wähle, wie viele Zahlen generiert werden sollen (von einer bis zu einigen Tausend), und wähle, ob wiederholte Werte erlaubt sein sollen.
Der Generator verwendet Rejection-Sampling statt naiver Modulo-Arithmetik, sodass die Ausgabeverteilung genau gleichmäßig über den Bereich ist — jede ganze Zahl zwischen Min und Max einschließlich ist gleich wahrscheinlich, ohne Bias zu kleineren Zahlen. Für den Dezimalmodus erzeugt das Tool ein gleichmäßiges Float im angeforderten Bereich mit der von dir angegebenen Präzision. Ohne-Zurücklegen-Modus mischt eine Fisher-Yates-Permutation, wenn du viele verschiedene Werte aus einem kleinen Bereich anforderst. Die Generierung ist sofortig und läuft vollständig auf der Client-Seite.
Anwendungsfälle
- Zufallszahlen für statistische Stichproben generieren
- Lotteriezahlen oder Tombola-Lose auswählen
- Zufällige Testdaten innerhalb eines bekannten Bereichs erstellen
- Würfelwürfe oder andere zufällige Ereignisse in einem Spiel simulieren
Häufig gestellte Fragen
- Ist die Verteilung genau gleichmäßig?
- Ja. Rejection-Sampling vermeidet den Modulo-Bias, den naives (zufällig % n) einführt, sodass jede ganze Zahl im Bereich gleich wahrscheinlich ist.
- Warum dies statt Math.random verwenden?
- Math.random ist ein nicht-kryptographischer PRNG, der vorhersagbar gesät werden kann und nicht geeignet ist, wenn Fairness oder Unratbarkeit wichtig ist. crypto.getRandomValues ist das sichere Äquivalent.
- Was passiert, wenn ich eindeutige Zahlen anforde und der Bereich zu klein ist?
- Das Tool lehnt Anfragen ab, bei denen du mehr eindeutige Zahlen anforderst, als der Bereich liefern kann (z.B. 100 eindeutige Zahlen in 1-10 ist unmöglich).
- Kann ich Dezimalzahlen generieren?
- Ja. Setze die Präzision (Anzahl der Dezimalstellen) und das Tool erzeugt gleichmäßige Floats im Bereich.
- Werden meine Zahlen irgendwohin gesendet?
- Nein. Alles erfolgt in deinem Browser; die generierten Zahlen werden beim Schließen des Tabs verworfen.