Örülnék, ha megosztanád ezeket az oldalakat barátaiddal, elmentenéd a könyvjelzőkbe vagy linkelnéd őket. Köszönöm! 🙏

Online véletlenszám-generátor

Acrafto Team Matematika
Frissítve
Gyors sablonok
Minden a böngészőjében fut. Egyetlen szám sem hagyja el az eszközét.

Hogyan működik a véletlenszám-generátor?

A generátor két véletlenforrást kínál, Ön dönti el, melyik illik a feladathoz.

A biztonságos véletlen entrópiát merít az operációs rendszeréből a Web Crypto API-n (crypto.getRandomValues()) keresztül. Kiszámíthatatlan és megismételhetetlen – ez a helyes választás egy valódi sorsoláshoz, ahol senki sem tippelheti meg előre az eredményt.

A maggal vezérelt (seeded) mód bármilyen beírt szöveget kiinduló állapottá alakít egy determinisztikus generátor számára (xoshiro128**). Ugyanaz a mag mindig ugyanazokat a számokat adja, így bárki visszajátszhatja a sorsolást, és megerősítheti, hogy tényleg azt kapta, amit állít.

Mindkettő teljes egészében a böngészőjében fut. Egyetlen szám sem jut el a szerverre.

Nincs modulo torzítás

A legtöbb egyszerű generátor egy véletlen 32 bites értéket a érték % tartomány képlettel vetít le a kívánt tartományra. Ha a tartomány nem osztja el egyenletesen a 2³²-t, a legkisebb számok kicsit gyakrabban jönnek ki a többinél. Több ezer sorsolás után ez már mérhető.

Ez a generátor helyette elutasításos mintavételt (rejection sampling) használ: azokat az értékeket, amelyek az egyenlőtlen maradékba esnének, eldobja és újra húz. A tartomány minden száma pontosan ugyanakkora eséllyel jön ki. Ezt a beépített egyenletességi teszttel Ön is ellenőrizheti.

Mire képes a generátor

Tartomány

  • Minimum és maximum – bármilyen egész vagy tizedes tartomány, negatív értékekkel együtt
  • Mennyiség – 1-től egészen 1 000 000-ig egy húzásban
  • Ismétlés nélkül – minden szám legfeljebb egyszer szerepel, ahogy egy valódi sorsolásnál
  • Rendezés – húzási sorrend, növekvő vagy csökkenő; a rendezés sosem érinti a véletlenszerűséget
  • Lépésköz – az eredmények egy érték többszöröseire korlátozása, így csak 0, 5, 10, 15 jöhet ki
  • Kizárt számok – olyan értékek listázása, amelyek soha nem húzhatók

Mód

  • Véletlenforrás – biztonságos (Web Crypto) vagy maggal vezérelt (visszajátszható)
  • Mag – bármilyen szöveg; ugyanaz a mag mindig ugyanazt a húzást játssza vissza
  • Eloszlás – egyenletes, normális (Gauss), exponenciális, Poisson, háromszög, binomiális
  • Súlyok – a kiválasztott számoknak nagyobb esélyt ad, szám:súly formában megadva
  • Dobókocka-jelölés3d6+2, d20, 2d20kh1 az előny (advantage) esetén, 4d6dl1 a képességértékek dobásához

Kimenet

  • Elválasztó – vessző, szóköz, pontosvessző, tabulátor, új sor, vagy bármi, amit beír
  • Számrendszer – tízes, kettes, nyolcas, tizenhatos vagy 36-os alapú
  • Nullákkal feltöltés – a 7-ből 007 lesz jegy- vagy azonosítószámokhoz
  • Előtag és utótag – minden számot fix szöveg vesz körül
  • Sablon{n} a szám, {i} a pozíciója, így a user{n} user42-vé válik
  • Másolás mint – egyszerű szöveg, CSV, JSON vagy Markdown táblázat

Statisztika

Minden húzás élőben összegzésre kerül: összeg, átlag, medián, legkisebb, legnagyobb, szórás, valamint hogy hány eredmény páros, páratlan vagy prím. Egy hisztogram mutatja az eloszlás alakját, egy khi-négyzet teszt pedig megmondja, hogy az eredmények valóban egyenletes eloszlást követnek-e.

Előzmények

Az utolsó 50 húzás megmarad a böngészőjében, a hozzájuk tartozó beállításokkal együtt – egy kattintással bármelyik visszaállítható. A gyakran használt konfigurációk névvel ellátott előbeállításként menthetők, és az egész készlet exportálható egy JSON fájlba, amelyet másik gépen importálhat. Semmi sem tárolódik máshol, csak ebben a böngészőben.

Billentyűzet

Nyomja meg a Space vagy R billentyűt az újrahúzáshoz, egér nélkül.

Gyors előbeállítások

ElőbeállításTartományMennyiségHasználat
🎲 Kocka1–61Társasjátékok, döntéshozatal
🪙 Érme0–11Fej vagy írás
🎰 Lottó1–496Egyedi, rendezett, mint egy valódi sorsolás
💯 1–1001–1001Százalékok, A/B felosztás
🔢 PIN0–94Négy számjegy, ismétlés engedélyezve

Visszajátszható húzások

A maggal vezérelt mód azokra a pillanatokra való, amikor a „bízzon bennem, ez véletlen volt” nem elég.

Válasszon ki előre egy magot, amiben mindenki megegyezik – egy dátumot, egy hashtaget, valamely nyilvános érték záróárát –, és jelentse be a húzás előtt. Bárki beírhatja ugyanazt a magot ugyanazokkal a beállításokkal, és pontosan ugyanazt az eredményt kapja. Ezzel nem azt bizonyítja, hogy a számok kiszámíthatatlanok voltak, hanem azt, hogy nem húzott újra addig, amíg meg nem tetszett a válasz.

Ez az a mód is, ahogyan a véletlenszerűséget megismételhetővé teheti olyan munkában, amelyet ellenőrizni kell: egy mintavételi terv, amelyet egy kolléga újra lefuttathat, egy teszt-adathalmaz, amely stabil marad egy teszt-készleten belül, vagy egy osztálytermi feladat, ahol minden diák ugyanazt a „véletlen” adatot kapja.

Eloszlás választása

Az egyenletes eloszlás a tartomány minden számának ugyanakkora esélyt ad. Erre gondolnak az emberek általában, amikor véletlent mondanak, és ez az alapértelmezett.

A többi az eredményeket egy érték köré csoportosítja, ahogyan a valós mennyiségek is szoktak viselkedni:

  • Normális (Gauss) – testmagasság, mérési hibák, teszteredmények. Állítson be átlagot és szórást.
  • Exponenciális – független események közötti várakozási idők.
  • Poisson – események száma egy rögzített időintervallumban: érkezések óránként, hibás darabok egy tételben.
  • Háromszög – amikor ismeri a minimumot, a maximumot és a legvalószínűbb értéket, de semmi mást. Gyakori a projektbecsléseknél.
  • Binomiális – sikerek száma rögzített számú próbálkozásból, rögzített valószínűség mellett.

Minden eloszlás a beállított tartományra van vágva, így egy hosszú Gauss-farok nem léphet ki a minimumból és maximumból.

Hol használják a véletlen számokat

Játékok és szórakozás

  • Társasjátékok – kockadobás, sorrend meghatározása
  • Asztali szerepjátékok4d6dl1 a képességértékekhez, 2d20kh1 az előnyhöz
  • Nyereményjátékok – nyertes kiválasztása, maggal, hogy a résztvevők ellenőrizhessék
  • Kvízek – véletlen kérdéssorrend

Statisztika és tudomány

  • Mintavételezés – minta húzása egy populációból ismétlés nélkül
  • A/B tesztelés – résztvevők csoportokba sorolása
  • Monte Carlo szimuláció – valószínűség becslése ismétléssel
  • Bootstrapping – újramintavételezés a bizonytalanság becsléséhez

Fejlesztés

  • Tesztadatok – egymillió érték, a háttérben generálva, hogy az oldal reszponzív maradjon
  • Fixtures – maggal vezérelt, így egy elbukó teszt mindkétszer ugyanúgy bukik el
  • Véletlen azonosítók – feltöltéssel, előtaggal vagy sablonnal
  • Terheléses tesztelés – sablonos azonosítók, mint user{n}@example.com

Valódi vs. pszeudovéletlen számok

Math.random()crypto.getRandomValues()Maggal vezérelt (xoshiro128**)
TípusPszeudovéletlenKriptográfiailag biztonságosPszeudovéletlen, determinisztikus
EntrópiaforrásMotor által választott magRendszer CSPRNGAz Ön magszövege
Előre jelezhető?Potenciálisan igenNemIgen, tervezés szerint
Megismételhető?NemNemMindig
Alkalmas biztonsági célraNemIgenNem
Alkalmas statisztikai célraFüggIgenIgen
Alkalmas ellenőrizhető sorsoláshozNemNemIgen

A Math.random() sehol sem kerül felhasználásra ebben az eszközben.

Húzások ismétlés nélkül

A Nincs ismétlés opció bekapcsolásával a tartomány minden száma legfeljebb egyszer szerepel. Ideális az alábbiakhoz:

  • Nyereményjátékok – senki sem nyerhet kétszer
  • Permutációk – egy elemhalmaz megkeverése
  • Bingó – olyan számok húzása, amelyek egyszer húzva maradnak
  • Lottó – hat különböző szám 1-től 49-ig

A húzás egy részleges Fisher–Yates keveréssel történik, így 6 szám kérése egymillióból ugyanolyan gyors, mint 6 szám kérése 49-ből – sosem ismétlődik reménykedve, hogy elkerülje az ütközést. Ha több egyedi számot kér, mint amennyit a tartomány adni tud, a generátor ezt jelzi ahelyett, hogy lefagyna.

Eredmények exportálása

Másolja a számokat egyszerű szövegként, tetszőleges elválasztóval, CSV-ként egy táblázathoz, JSON-ként kódhoz, vagy Markdown táblázatként dokumentációhoz. A nagyon nagy húzások teljes egészükben a memóriában maradnak, és teljesen másolhatók, még akkor is, ha a képernyőn csak az első pár ezer jelenik meg.

Véletlen számok generálása saját kódban

JavaScript / TypeScript

// Kriptográfiailag biztonságos egész szám [min, max] tartományban, modulo torzítás nélkül.
// A naiv `value % range` az alacsony számokat részesíti előnyben, ha a tartomány
// nem osztja el egyenletesen a 2**32-t - ezért elutasítjuk az egyenlőtlen maradékba eső értékeket.
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

# Kriptográfiailag biztonságos, modulo torzítás nélkül
n = secrets.randbelow(max - min + 1) + min

# Visszajátszható: ugyanaz a mag mindig ugyanazt a sorozatot adja
rng = random.Random('my-seed')
n = rng.randint(min, max)

# Ismétlés nélkül
sample = random.sample(range(min, max + 1), count)

PHP

// Kriptográfiailag biztonságos (PHP 7+), modulo torzítás nélkül
$n = random_int($min, $max);

// Visszajátszható
mt_srand(crc32('my-seed'));
$n = mt_rand($min, $max);

Gyakran ismételt kérdések (GYIK)

Valóban véletlen az eredmény? Biztonságos módban igen. A crypto.getRandomValues() függvényből származik, egy kriptográfiailag biztonságos generátorból, amelyet az operációs rendszer entrópia-készlete táplál. Az eredmények egyenletesen elosztottak és kiszámíthatatlanok. A maggal vezérelt mód szándékosan az ellenkezője: visszajátszható, és pontosan ez a lényege.
Hány számot generálhatok egyszerre? Akár 1 000 000-at. Az 50 000 fölötti húzásokat egy háttérszál (worker) számolja ki, hogy az oldal reszponzív maradjon, a képernyőn pedig az első 2000 jelenik meg a maradék darabszámával – a másolás így is mindent tartalmaz.
Generálhatok negatív számokat? Igen. Állítson be negatív minimumot. A JavaScript számok teljes tartománya működik, beleértve a mindkét végén negatív tartományokat is.
A rendezés befolyásolja a véletlenszerűséget? Nem. A számok húzása előbb történik, a rendezés utólag. A rendezés csak a megjelenítés sorrendjét változtatja meg.
Ugyanaz a mag holnap is ugyanazokat a számokat adja? Igen, bármely más eszközön vagy böngészőben is. A maggal vezérelt generátor teljesen determinisztikus, és kizárólag a magtól és a beállításoktól függ.
Mit mond el az egyenletességi teszt? Egy khi-négyzet tesztet futtat, amely összeveti, hogy az egyes számok valójában milyen gyakran jöttek ki azzal, hogy elméletileg milyen gyakran kellene. Ha a statisztika a kritikus érték alatt marad, az eredmények összhangban vannak egy egyenletes eloszlással. Ehhez viszonylag szűk tartomány és elegendő húzás szükséges – lehetőség szerint legalább öt húzás minden lehetséges értékre –, hogy érdemi eredményt adjon.
Hogyan működnek a súlyok? Adja meg őket szám:súly párokként, például 1:5, 2:1, 3:1. Itt az 1-es szám ötször olyan valószínű, mint a 2-es vagy a 3-as. A fel nem sorolt számok súlya nulla, ezek soha nem kerülnek kihúzásra.
Milyen dobókocka-jelölés támogatott? A 3d6 három hatoldalú kockát dob. Módosítót a 3d6+2 formával adhat hozzá. A dobásokat a kh, kl, dh, dl jelölésekkel tarthatja meg vagy dobhatja el – így a 2d20kh1 a két d20 közül a magasabbat tartja meg (előny/advantage), a 4d6dl1 pedig négy d6 közül a legalacsonyabbat dobja el.
Tárolódik valahol az előzményem? Csak ebben a böngészőben, helyi tárolóban (local storage). Sosem jut el szerverre, nem szinkronizálódik másik eszközre, és eltűnik, ha törli az oldal adatait. Exportálja JSON formátumba, ha meg szeretné őrizni vagy át szeretné vinni.