Zufallszahlen-Generator online
Verteilung der Ergebnisse
Gleichverteilungstest
Ziehen Sie mehr Zahlen in einem engeren Bereich, um den Test durchzuführen.
Letzte Ziehungen
Gespeicherte Vorlagen
Wie funktioniert der Zufallszahlen-Generator?
Der Generator bietet Ihnen zwei Quellen für Zufälligkeit – Sie entscheiden, welche zur jeweiligen Aufgabe passt.
Sicherer Zufall bezieht Entropie über die Web Crypto API (crypto.getRandomValues()) direkt aus Ihrem Betriebssystem. Er ist unvorhersehbar und nicht wiederholbar – die richtige Wahl für eine echte Ziehung, bei der niemand das Ergebnis im Voraus erraten können soll.
Mit Seed verwandelt einen beliebigen von Ihnen eingegebenen Text in den Startzustand eines deterministischen Generators (xoshiro128**). Derselbe Seed erzeugt immer dieselben Zahlen, sodass jeder Ihre Ziehung nachvollziehen und bestätigen kann, dass das Ergebnis stimmt.
Beide laufen vollständig in Ihrem Browser. Keine Zahl gelangt jemals an einen Server.
Kein Modulo-Bias
Die meisten einfachen Generatoren bilden einen zufälligen 32-Bit-Wert mit value % range auf Ihren Bereich ab. Teilt sich der Bereich nicht gleichmäßig durch 2³², kommen die niedrigsten Zahlen etwas häufiger vor als der Rest. Über Tausende Ziehungen hinweg ist das messbar.
Dieser Generator verwendet stattdessen Rejection Sampling: Werte, die in den ungleichmäßigen Rest fallen würden, werden verworfen und neu gezogen. Jede Zahl in Ihrem Bereich hat exakt die gleiche Chance. Sie können das mit dem integrierten Gleichverteilungstest selbst überprüfen.
Was der Generator kann
Bereich
- Minimum und Maximum – beliebiger Ganzzahl- oder Dezimalbereich, negative Werte eingeschlossen
- Anzahl der Zahlen – von 1 bis zu 1.000.000 in einer Ziehung
- Keine Wiederholungen – jede Zahl erscheint höchstens einmal, wie bei einer echten Ziehung
- Sortierung – Ziehungsreihenfolge, aufsteigend oder absteigend; die Sortierung verändert die Zufälligkeit nie
- Schrittweite – beschränkt die Ergebnisse auf Vielfache eines Werts, sodass nur 0, 5, 10, 15 vorkommen
- Zahlen ausschließen – Werte auflisten, die niemals gezogen werden dürfen
Modus
- Zufallsquelle – sicher (Web Crypto) oder mit Seed (reproduzierbar)
- Seed – beliebiger Text; derselbe Seed reproduziert immer dieselbe Ziehung
- Verteilung – Gleichverteilung, Normal (Gauß), Exponential, Poisson, Dreieck, Binomial
- Gewichtungen – bestimmten Zahlen eine höhere Chance geben, geschrieben als
number:weight - Würfelnotation –
3d6+2,d20,2d20kh1für Vorteil (Advantage),4d6dl1für das Auswürfeln von Attributen
Ausgabe
- Trennzeichen – Komma, Leerzeichen, Semikolon, Tabulator, Zeilenumbruch oder ein beliebiger eigener Text
- Zahlensystem – dezimal, binär, oktal, hexadezimal oder Basis 36
- Mit Nullen auffüllen – aus 7 wird 007, für Ticket- oder ID-Nummern
- Präfix und Suffix – jede Zahl in festen Text einbetten
- Vorlage (Template) –
{n}ist die Zahl,{i}ihre Position, aususer{n}wird souser42 - Kopieren als – reiner Text, CSV, JSON oder eine Markdown-Tabelle
Statistik
Jede Ziehung wird live ausgewertet: Summe, Mittelwert, Median, kleinster und größter Wert, Standardabweichung sowie die Anzahl gerader, ungerader und Primzahl-Ergebnisse. Ein Histogramm zeigt die Form der Verteilung, und ein Chi-Quadrat-Test verrät Ihnen, ob die Ergebnisse tatsächlich einer Gleichverteilung entsprechen.
Verlauf
Die letzten 50 Ziehungen werden zusammen mit den zugehörigen Einstellungen in Ihrem Browser gespeichert – ein Klick stellt jede davon wieder her. Häufig genutzte Konfigurationen lassen sich als benannte Presets speichern, und alles zusammen exportiert sich in eine JSON-Datei, die Sie auf einem anderen Gerät importieren können. Gespeichert wird nirgendwo außer in diesem Browser.
Tastatur
Drücken Sie Leertaste oder R, um erneut zu ziehen, ohne die Maus zu benutzen.
Schnelle Voreinstellungen
| Voreinstellung | Bereich | Anzahl | Verwendung |
|---|---|---|---|
| 🎲 Würfel | 1–6 | 1 | Brettspiele, Entscheidungen |
| 🪙 Münze | 0–1 | 1 | Kopf oder Zahl |
| 🎰 Lotto | 1–49 | 6 | Eindeutig, sortiert, wie bei einer echten Ziehung |
| 💯 1–100 | 1–100 | 1 | Prozentwerte, A/B-Aufteilungen |
| 🔢 PIN | 0–9 | 4 | Vier Stellen, Wiederholungen erlaubt |
Reproduzierbare Ziehungen
Der Modus mit Seed ist für die Momente gedacht, in denen „vertrau mir, das war zufällig” nicht ausreicht.
Wählen Sie einen Seed, auf den sich alle vorher einigen können – ein Datum, ein Hashtag, der Schlusskurs von etwas Öffentlichem – und geben Sie ihn vor der Ziehung bekannt. Jeder kann dann denselben Seed mit denselben Einstellungen eingeben und erhält das identische Ergebnis. Damit ist nicht bewiesen, dass die Zahlen unvorhersehbar waren – bewiesen ist, dass Sie nicht so lange neu gewürfelt haben, bis Ihnen das Ergebnis gefiel.
So machen Sie Zufälligkeit auch in Arbeiten reproduzierbar, die überprüfbar sein müssen: einen Stichprobenplan, den ein Kollege erneut ausführen kann, einen Satz von Testfixtures, der über eine Testsuite hinweg stabil bleibt, oder eine Unterrichtsübung, bei der jeder Schüler dieselben „zufälligen” Daten erhält.
Die richtige Verteilung wählen
Gleichverteilung gibt jeder Zahl im Bereich die gleiche Chance. Das meinen die meisten Menschen mit „zufällig”, und es ist die Standardeinstellung.
Die anderen Verteilungen häufen Ergebnisse um einen Wert – so wie es reale Größen häufig tun:
- Normal (Gauß) – Körpergrößen, Messfehler, Testergebnisse. Mittelwert und Standardabweichung festlegen.
- Exponential – Wartezeiten zwischen unabhängigen Ereignissen.
- Poisson – Anzahl von Ereignissen in einem festen Intervall: Ankünfte pro Stunde, Defekte pro Charge.
- Dreieck – wenn Sie Minimum, Maximum und den wahrscheinlichsten Wert kennen, aber sonst nichts. Häufig bei Projektschätzungen.
- Binomial – Erfolge bei einer festen Anzahl von Versuchen mit fester Wahrscheinlichkeit.
Jede Verteilung wird auf den von Ihnen festgelegten Bereich begrenzt, sodass ein langer Gauß-Ausläufer nicht über Ihr Minimum und Maximum hinausgehen kann.
Wo Zufallszahlen eingesetzt werden
Spiele und Unterhaltung
- Brettspiele – Würfelwürfe, Zugreihenfolge
- Tabletop-Rollenspiele –
4d6dl1für Attributswerte,2d20kh1für Vorteil - Gewinnspiele – einen Gewinner auslosen, mit Seed zur Überprüfbarkeit durch die Teilnehmer
- Quizze – zufällige Reihenfolge der Fragen
Statistik und Wissenschaft
- Stichprobenziehung – eine Stichprobe ohne Wiederholung aus einer Population ziehen
- A/B-Tests – Teilnehmer zufällig Gruppen zuweisen
- Monte-Carlo-Simulation – Wahrscheinlichkeiten durch Wiederholung schätzen
- Bootstrapping – Resampling zur Schätzung von Unsicherheit
Entwicklung
- Testdaten – eine Million Werte, im Hintergrund generiert, damit die Seite reaktionsfähig bleibt
- Fixtures – mit Seed, sodass ein fehlschlagender Test zweimal auf dieselbe Weise fehlschlägt
- Zufalls-IDs – mit Auffüllung, Präfixen oder einer Vorlage
- Lasttests – Bezeichner nach Vorlage wie
user{n}@example.com
Echte vs. pseudozufällige Zahlen
Math.random() | crypto.getRandomValues() | Mit Seed (xoshiro128**) | |
|---|---|---|---|
| Typ | Pseudozufällig | Kryptographisch sicher | Pseudozufällig, deterministisch |
| Entropiequelle | Von der Engine gewählter Seed | System-CSPRNG | Ihr Seed-Text |
| Vorhersehbar? | Potenziell | Nein | Ja, per Design |
| Wiederholbar? | Nein | Nein | Immer |
| Geeignet für Sicherheit | Nein | Ja | Nein |
| Geeignet für Statistik | Kommt darauf an | Ja | Ja |
| Geeignet für überprüfbare Ziehungen | Nein | Nein | Ja |
Math.random() wird in diesem Tool nirgends verwendet.
Ziehungen ohne Wiederholung
Mit aktivierter Option Keine Wiederholungen erscheint jede Zahl im Bereich höchstens einmal. Ideal für:
- Gewinnspiele – niemand kann zweimal gewinnen
- Permutationen – eine Menge von Elementen mischen
- Bingo – gezogene Zahlen bleiben gezogen
- Lotto – sechs unterschiedliche Zahlen von 1 bis 49
Die Ziehung nutzt einen partiellen Fisher-Yates-Shuffle, sodass 6 Zahlen aus einer Million genauso schnell gezogen werden wie 6 aus 49 – es wird nie in der Hoffnung geloopt, eine Kollision zu vermeiden. Fordern Sie mehr eindeutige Zahlen an, als der Bereich liefern kann, meldet der Generator das, statt sich aufzuhängen.
Ergebnisse exportieren
Kopieren Sie die Zahlen als reinen Text mit einem beliebigen Trennzeichen, als CSV für eine Tabellenkalkulation, als JSON für Code oder als Markdown-Tabelle für Dokumentation. Sehr große Ziehungen bleiben vollständig im Speicher und werden vollständig kopiert, auch wenn auf dem Bildschirm nur die ersten paar Tausend angezeigt werden.
Zufallszahlen im eigenen Code generieren
JavaScript / TypeScript
// Kryptographisch sichere Ganzzahl in [min, max], ohne Modulo-Bias.
// Das naive `value % range` bevorzugt niedrige Zahlen, wenn sich der
// Bereich nicht gleichmäßig durch 2**32 teilen lässt - daher verwerfen
// wir Werte im ungleichmäßigen Rest.
function randomInt(min, max) {
const range = max - min + 1;
const limit = Math.floor(0x100000000 / range) * range;
const arr = new Uint32Array(1);
let value;
do {
crypto.getRandomValues(arr);
value = arr[0];
} while (value >= limit);
return min + (value % range);
}
Python
import random
import secrets
# Kryptographisch sicher, ohne Modulo-Bias
n = secrets.randbelow(max - min + 1) + min
# Reproduzierbar: derselbe Seed liefert immer dieselbe Sequenz
rng = random.Random('my-seed')
n = rng.randint(min, max)
# Ohne Wiederholung
sample = random.sample(range(min, max + 1), count)
PHP
// Kryptographisch sicher (PHP 7+), ohne Modulo-Bias
$n = random_int($min, $max);
// Reproduzierbar
mt_srand(crc32('my-seed'));
$n = mt_rand($min, $max);
Häufig gestellte Fragen (FAQ)
Ist das Ergebnis wirklich zufällig?
Im sicheren Modus ja. Es stammt auscrypto.getRandomValues(), einem kryptographisch sicheren Generator, der aus dem Entropie-Pool Ihres Betriebssystems gespeist wird. Die Ergebnisse sind gleichverteilt und unvorhersehbar. Der Modus mit Seed ist bewusst das Gegenteil: Er ist reproduzierbar, das ist der Sinn der Sache.
Wie viele Zahlen kann ich auf einmal generieren?
Bis zu 1.000.000. Ziehungen über 50.000 werden in einem Hintergrund-Worker berechnet, damit die Seite reaktionsfähig bleibt, und der Bildschirm zeigt die ersten 2.000 mit einer Angabe des Rests – beim Kopieren erhalten Sie trotzdem alles.Kann ich negative Zahlen generieren?
Ja. Setzen Sie ein negatives Minimum. Der gesamte Bereich der JavaScript-Zahlen funktioniert, auch mit negativen Werten an beiden Enden.Beeinflusst die Sortierung die Zufälligkeit?
Nein. Die Zahlen werden zuerst gezogen und danach sortiert. Die Sortierung ändert nur die Reihenfolge, in der Sie sie sehen.Liefert derselbe Seed morgen dieselben Zahlen?
Ja, und auch auf jedem anderen Gerät oder Browser. Der Generator mit Seed ist vollständig deterministisch und hängt nur von Ihrem Seed und den Einstellungen ab.Was sagt mir der Gleichverteilungstest?
Er führt einen Chi-Quadrat-Test durch, der vergleicht, wie oft jede Zahl tatsächlich vorkam gegenüber der erwarteten Häufigkeit. Bleibt die Statistik unter dem kritischen Wert, sind die Ergebnisse mit einer Gleichverteilung vereinbar. Für eine aussagekräftige Auswertung braucht es einen einigermaßen engen Bereich und genügend Ziehungen – mindestens fünf pro möglichem Wert.Wie funktionieren Gewichtungen?
Schreiben Sie sie alsnumber:weight-Paare, zum Beispiel 1:5, 2:1, 3:1. Hier ist die 1 fünfmal so wahrscheinlich wie die 2 oder die 3. Nicht aufgeführte Zahlen erhalten das Gewicht null und werden nie gezogen.
Welche Würfelnotation wird unterstützt?
3d6 würfelt drei sechsseitige Würfel. Mit 3d6+2 fügen Sie einen Modifikator hinzu. Würfel behalten oder verwerfen mit kh, kl, dh, dl – so behält 2d20kh1 den höheren von zwei d20 (Vorteil), und 4d6dl1 verwirft den niedrigsten von vier d6.