Preskočiť na hlavný obsah

Generátor náhodných čísel zadarmo

Generujte náhodné čísla v ľubovoľnom rozsahu, vytvárajte jedinečné zoznamy čísel alebo hádžte kockami. Využíva kryptograficky bezpečnú náhodnosť.

Po načítaní funguje offline

🔒 Každé číslo využíva kryptograficky bezpečnú náhodnosť prehliadača (crypto.getRandomValues) — skutočne férové, nie predvídateľné Math.random(). Nič sa nikam neposiela. Napriek tomu tieto čísla nepoužívajte na generovanie kryptografických kľúčov, bezpečnostných tokenov ani regulovaných lotérií/hazardných hier, ktoré vyžadujú auditované, hardvérovo certifikované zdroje náhodnosti.

Potrebujete vybrať víťaza podľa mena zo zoznamu alebo hodiť mincou? Použite nástroj Hod mincou, Koleso šťastia a Výber zo zoznamu →

Bežné použitia

  • Generujte čísla lotérieVyberte náhodné čísla lotérie pre Powerball, Mega Millions, EuroMillions a ďalšie žreby.
  • Vyberte náhodného víťaza pre darovanieSpravodlivo vyberte náhodného víťaza z očíslovaného zoznamu položiek pre súťaže a darovanie.
  • Hádzajte kocky pre stolné hryHádzajte ľubovoľnú kombináciu kociek — d4, d6, d8, d10, d12, d20, d100 — pre D&D a stolné RPG.
  • Náhodné vzorkovanie pre výskumGenerujte náhodné vzorky, priraďujte náhodné ID alebo vyberte náhodnú podskupinu z očíslovaného súboru údajov.
  • Generujte náhodné čísla testovacích údajovVytvorte veľké zoznamy náhodných čísiel na testovanie algoritmov, výplň databáz a stresové testovanie systémov.

Ako to funguje

Každé číslo, ktoré tento nástroj vygeneruje, pochádza z crypto.getRandomValues — kryptograficky bezpečného zdroja náhodnosti prehliadača, rovnakého, aký sa používa na generovanie TLS kľúčov. Ručne napísaný algoritmus odmietacieho vzorkovania stojí na vrchu, aby eliminoval modulové skreslenie, ktoré trápi jednoduché implementácie Math.random() % rozsah, vrátane rozsahov širších ako 2^32 pomocou aritmetiky BigInt.

  1. 1
    Nastavte rozsah a režim
    Vyberte si medzi jedným číslom, dávkovým zoznamom (až 1000) alebo mnohostennými kockami (d4 až d100). Pre zoznamy môžete tiež vyžadovať jedinečné hodnoty a voliteľne zoradiť výstup vzostupne.
  2. 2
    crypto.getRandomValues čerpá surovú entropiu
    Každé číslo sa čerpá z Uint32Array (alebo BigUint64Array pre rozsahy širšie ako 2^32) naplneného kryptografickým generátorom náhodných čísel prehliadača — nie Math.random(). Odmietacie vzorkovanie potom zahodí hodnoty, ktoré by skreslili rozdelenie, takže každé celé číslo vo vašom rozsahu má presne rovnakú pravdepodobnosť.
  3. 3
    Režim jedinečných hodnôt používa Fisher-Yates alebo sledovanie odmietnutí
    Keď je zapnutý režim jedinečnosti a rozsah sa zmestí do pamäte (až 100 000 hodnôt), nástroj zhmotní celú zásobu a zamieša ju Fisher-Yatesovým algoritmom. Pri veľmi veľkých rozsahoch namiesto toho čerpá hodnoty po jednej a preskakuje opakovania — čím sa vyhne pamäťovým nákladom na zostavenie poľa s miliardami položiek.
  4. 4
    Výsledky pristávajú s animovanou spätnou väzbou a zostávajú v histórii relácie
    Finálne hodnoty sa animujú na svoje miesto (výherný automat pre čísla, hádzajúce sa kocky pre režim kociek) pomocou requestAnimationFrame a potom sa objavia v posúvateľnom denníku histórie, ktorý môžete kedykoľvek skopírovať. Nič neopúšťa váš prehliadač.

Súvisiace nástroje

Často kladené otázky