Willekeurige-getallen-generator
Kies getallen in elk bereik — met of zonder duplicaten, gesorteerd of geschud, copy-paste-klaar.
Wat doet deze tool
Genereert willekeurige gehele getallen in elk gewenst bereik, in elke hoeveelheid van 1 tot 10.000. Schakel duplicaten in of uit (uit voor lotereiachtige unieke trekkingen, aan voor het simuleren van dobbel- of muntreeksen), kies of je de uitvoer oplopend sorteert of geschud laat, en kies het gewenste formaat — één getal per regel, kommagescheiden voor spreadsheets, met spaties voor snel plakken in een CLI, of als JavaScript-arrayletteral voor code. De willekeurigheid is correct uniform: we gebruiken crypto.getRandomValues() met rejection sampling om de modulo-bias weg te halen die Math.random() % range introduceert. Voor unieke trekkingen over dichte bereiken voeren we een gedeeltelijke Fisher-Yates-shuffle uit; voor ijle bereiken een hash-set met retries. Het hele ding draait lokaal — geen upload, geen logging, geen rate limits.
Hoe gebruik je het
Stel een min en een max in — die mogen negatief, nul of alles ertussen zijn. Stel in hoeveel getallen je nodig hebt. Beslis of duplicaten zijn toegestaan (uit voor verlotingen, aan voor herhaalde worpen). Beslis of je de uitvoer oplopend wilt sorteren. Kies een formaat: regels, komma, spatie of array. Druk op Genereren. Het resultaat verschijnt in het paneel; vraag je om één getal, dan toont het groot; bij meerdere verschijnt het in een scrollbaar codeblok. Druk op Kopiëren om alles naar je klembord te sturen. Opnieuw uitvoeren met dezelfde instellingen levert telkens een nieuwe trekking op — er is geen seed.
Hoe de randomness werkt
Elke trekking sampelt een 32-bits geheel getal uit crypto.getRandomValues() en verwerpt elke trekking boven floor(2^32 / range) * range. De geaccepteerde trekking modulo range plus min is je getal — bewijsbaar uniform over het hele bereik. Voor unieke trekkingen gebruiken we één van twee strategieën: als het bereik dicht genoeg is (≤ 200.000 waarden), materialiseren we de volledige pool en passen we een gedeeltelijke Fisher-Yates-shuffle toe op de eerste count elementen — dat is O(count), niet O(range). Als het bereik ijl en groot is, gebruiken we een hash-set met retries — begrensd door de limiet van 10.000 zodat retries nooit ontploffen. Sorteren (indien aan) is een laatste oplopende doorloop.
Veelvoorkomende instellingen
Een paar voorbeeldcombinaties om je op weg te helpen.
| Gebruik | Instellingen |
|---|---|
| Lotgetallen (5/49) | Min 1, max 49, aantal 5, duplicaten uit, sorteren aan |
| Muntreeks (10 worpen) | Min 0, max 1, aantal 10, duplicaten aan |
| Willekeurige kleurbyte | Min 0, max 255, aantal 1 |
| 3 winnaars trekken uit 100 | Min 1, max 100, aantal 3, duplicaten uit |
Veelgestelde vragen
Is het echt willekeurig?
crypto.getRandomValues() met rejection sampling, de standaard CSPRNG-aanpak voor onbevooroordeelde gehele bereiken.Waarom om meer unieken vragen dan het bereik toelaat?
Kan ik de RNG seeden?
Wat is het maximale aantal?
Werkt het met negatieve getallen?
max − min + 1, dus zorg dat max ≥ min.