Juhuslike arvude generaator võrgus ja tasuta
Kuidas juhuslike arvude generaator töötab?
Meie generaator kasutab krüptograafiliselt turvalisi juhuslikke numbreid Web Crypto API-st (crypto.getRandomValues()). Erinevalt Math.random(), mis on pseudojuhuslik ja turva- või statistiliste eesmärkide jaoks sobimatu, pakub crypto.getRandomValues() tõelist entroopiat süsteemi allikast.
Kogu genereerimine toimub otse teie brauseris – ühtegi numbrit serverisse ei saadeta.
Generaatori funktsioonid
Põhiseaded
- Miinimum ja maksimum – määrake suvaline täisarvu- või kümnendvahemik
- Numbrite arv – genereerige korraga 1 kuni 10 000 numbrit
- Kordused – keelake numbrite kordumine (sobib loosimiseks)
- Sorteerimine – sorteerige tulemused väikseimast suurimani
- Kümnendkohad – lülitage kümnendarvudele ja määrake täpsus
Kiirvalikud
| Valik | Vahemik | Arv | Kasutus |
|---|---|---|---|
| 🎲 Täring | 1–6 | 1 | Mängud, otsustamine |
| 🪙 Münt | 0–1 | 1 | Kull või kiri |
| 🎰 Loterii | 1–49 | 6 | Eesti Loto simulatsioon |
| 💯 1–100 | 1–100 | 1 | Üldine kasutus |
Kus juhuslikke numbreid kasutatakse?
Mängud ja meelelahutus
- Lauamängud – täringu viskamine, järjekorra loosimine
- Otsustamine – kui te ei tea, mida valida
- Viktoriinid ja võistlused – küsimuse või võitja juhuslik valik
- Rollimängud – tegelase atribuutide genereerimine
Statistika ja teadus
- Valimite võtmine – valimi juhuslik valik populatsioonist
- A/B testimine – juhuslik jaotus gruppidesse
- Monte Carlo simulatsioon – tõenäosuste hindamine
- Bootstrapping – statistiline meetod taasproovimiseks
Informaatika ja arendus
- Testandmed – testväärtuste genereerimine
- Närvivõrkude kaalude initsialiseerimine
- Juhuslikud ID-d – kui UUID on liiga suur
- Gamifikatsioon – juhuslikud auhinnad, “loot box” mehaanikad
Tõelised vs. pseudojuhuslikud numbrid
Math.random() | crypto.getRandomValues() | |
|---|---|---|
| Tüüp | Pseudojuhuslik | Krüptograafiliselt turvaline |
| Entroopia allikas | Algoritmi seeme | Süsteemi CSPRNG |
| Kiirus | Väga kiire | Kiire |
| Prognoositav? | Potentsiaalselt jah | Ei |
| Sobib turvalisuse jaoks? | Ei | Jah |
| Sobib statistika jaoks? | Oleneb | Jah |
Meie generaator kasutab alati krüptograafiliselt turvalist varianti, seega sobivad tulemused simulatsioonideks, statistilisteks arvutusteks ja loosimisteks.
Loosimine ilma kordusteta
Valiku „Kordused keelatud” märkimisel tagab generaator, et iga vahemiku number esineb tulemuses maksimaalselt ühe korra. See on ideaalne:
- Loosimine – võitjate valik ilma võimaluseta, et sama inimene võidab kaks korda
- Permutatsioonid – elementide juhuslik ümberjärjestamine
- Bingo – numbrite loosimine ilma kordusteta
- Eesti Loto – 6 erinevat numbrit vahemikus 1–49
Kui nõutav numbrite arv ületab vahemiku suuruse, kuvab generaator veateate.
Tulemuste eksport
Genereeritud numbreid saab kopeerida kahes formaadis:
- Komaga eraldatud –
12, 45, 7, 33– sobib tabelitesse sisestamiseks (Excel, Google Sheets) - Rea kaupa – iga number eraldi real – sobib tekstifailidele või skripti töötlemiseks
Kuidas genereerida juhuslikke numbreid oma koodis?
JavaScript / TypeScript
// Krüptograafiliselt turvaline juhuslik täisarv vahemikus [min, max]
function randomInt(min, max) {
const range = max - min + 1;
const arr = new Uint32Array(1);
crypto.getRandomValues(arr);
return min + (arr[0] % range);
}
// Pseudojuhuslik (kiire, kuid mitte turvaline)
const n = Math.floor(Math.random() * (max - min + 1)) + min;
Python
import random
import secrets
# Krüptograafiliselt turvaline
n = secrets.randbelow(max - min + 1) + min
# Pseudojuhuslik (standardraamatukogu)
n = random.randint(min, max)
# Ilma kordusteta
sample = random.sample(range(min, max + 1), count)
PHP
// Krüptograafiliselt turvaline (PHP 7+)
$n = random_int($min, $max);
// Pseudojuhuslik (vanem lähenemine)
$n = rand($min, $max);
Korduma kippuvad küsimused (KKK)
Kas tulemus on tõesti juhuslik?
Jah. Kasutamecrypto.getRandomValues(), mis on brauseris implementeeritud krüptograafiliselt turvaline pseudojuhuslike numbrite generaator (CSPRNG). Tulemused on statistiliselt ühtlaselt jaotatud ja ettearvamatud.