Număr aleatoriu Generator
Generați numere aleatorii instantaneu în browser. Personalizați intervalul, numărul și formatul. Gratuit, privat și fără date trimise la niciun server.
Generați
Generați numere aleatorii instantaneu în browser. Personalizați intervalul, numărul și formatul. Gratuit, privat și fără date trimise la niciun server.
Generați
Generatoarele de numere aleatorii produc numere într-un interval specificat fără un model previzibil. Aplicațiile comune includ aruncarea zarurilor, alegerea numerelor de loterie, eșantionarea pentru lucrări statistice, generarea de date de testare și orice context în care este nevoie de o alegere imparțială. Calitatea aleatoriei depinde de sursă: sursele slabe pot produce numere care par aleatorii, dar au modele detectabile; sursele puternice sunt imprevizibile chiar și pentru o analiză sofisticată.
Acest generator folosește sursa aleatorie sigură criptografic a browserului (window.crypto.getRandomValues) pentru utilizări relevante pentru securitate, cu opțional Math.random pentru utilizări de divertisment în care viteza contează mai mult decât securitatea. Pentru aruncările de zaruri, alegerile de concurs sau orice lucru care afectează rezultatele, sursa sigură este alegerea potrivită.
Intervalul de ieșire și numărul sunt configurabile. Generați un număr, mai multe deodată sau o secvență cu unicitate opțională (fără duplicate). Formatele de ieșire includ numere simple, liste separate prin virgulă și text pe rând.
Multe decizii mici beneficiază de o selecție aleatorie imparțială. Alegerea unui câștigător pentru un concurs, deciderea ce restaurant să încerce, randomizarea ordinii cazurilor de testare, eșantionarea rândurilor dintr-un set de date - toate sunt îmbunătățite de un generator de numere aleatorii care exclude părtinirea umană.
Activitatea statistică și științifică depinde și de aleatorietatea calității. Simulările Monte Carlo, atribuirea găleții de test A/B, randomizarea intrărilor de testare și multe alte tehnici necesită numere care sunt uniforme statistic și imprevizibile pentru sistemul studiat.
Setați intervalul și numărați, generați.
Generare aleatorie de numere întregi: obțineți un octet (sau cuvânt) aleatoriu din crypto.getRandomValues, aplicați eșantionarea de respingere pentru a evita părtinirea modulo, mapați la intervalul dorit. Modul simplu fără eșantionare de respingere produce o ușoară părtinire pentru intervalele care nu se împart uniform în intervalul sursei; eșantionarea de respingere evită acest lucru.
Generare de numere întregi uniforme fără părtinire: generați octet aleatoriu, dacă octet > floor(256/interval) × interval, respingeți și încercați din nou, altfel returnați intervalul de mod de octeți. Rata de respingere este de cel mult 50% în medie, deci algoritmul este practic rapid chiar și pentru intervale incomode.
Math.random vs crypto.getRandomValues: Math.random este mai rapid, dar folosește xorshift sau PRNG-uri similare care pot fi prezise având suficientă ieșire. crypto.getRandomValues este criptografic sigur. Pentru utilizare non-securitate (zaruri, alegeri ocazionale), fie funcționează; pentru securitate, utilizați cripto.