TanodTools
IT

Generatore di numeri casuali

Scegli un intervallo e quanti numeri vuoi. Ognuno viene estratto in modo uniforme dalla fonte casuale sicura del tuo browser.

Funziona interamente nel tuo browser

0 dà numeri interi.

Fino a 10.000 numeri per estrazione, limiti fino a 30 cifre e fino a 10 cifre decimali. I risultati non vengono salvati; ricaricare la pagina li cancella.

Come generare numeri casuali

  1. Scrivi il valore più piccolo e quello più grande. Entrambi gli estremi possono uscire e i numeri negativi funzionano.
  2. Imposta quanti numeri vuoi e spunta Senza ripetizioni se ogni numero deve essere diverso.
  3. Premi Genera, poi copia l'elenco o scaricalo come file di testo.

Perché un generatore sicuro, e cosa deve significare "casuale" qui

Un'estrazione equa significa che ogni valore ammesso è ugualmente probabile e che un'estrazione non dice nulla sulla successiva. Math.random() è veloce ma è una sequenza prevedibile sotto mentite spoglie, va bene per le animazioni, non per l'estrazione di un premio. crypto.getRandomValues del browser è inizializzato dal sistema operativo ed è la fonte giusta per tutto ciò su cui le persone potrebbero discutere.

Trasformare bit casuali grezzi in un numero da 1 a 6 è il punto in cui molti strumenti sbagliano. Un valore a 32 bit ha 4.294.967.296 possibilità, che 6 non divide, quindi usare il resto rende le facce basse leggermente più probabili. La soluzione è il rejection sampling: il più grande multiplo della dimensione dell'intervallo sotto 232 è la soglia, e un'estrazione sopra di essa viene scartata e ripetuta. Per intervalli più larghi di 32 bit lo strumento estrae esattamente tanti bit quanti servono e rifiuta tutto ciò che supera l'intervallo, usando interi di grandi dimensioni così che valori vicini a 9.007.199.254.740.991 restino esatti.

I decimali usano la stessa idea su una griglia. Con due cifre decimali, l'intervallo da 0 a 5 viene trattato come gli interi da 0 a 500, se ne estrae uno e il punto viene rimesso al suo posto, il che mantiene ugualmente probabile ogni valore della griglia invece di arrotondare un numero continuo.

Consigli

Domande frequenti

I numeri sono davvero casuali?

Provengono da crypto.getRandomValues, lo stesso generatore sicuro che i browser usano per le chiavi di cifratura, non da Math.random. Ogni valore del tuo intervallo è ugualmente probabile. Il generatore va bene per giochi, estrazioni e campioni; non è stato sottoposto ad audit per lotterie regolamentate.

Cos'è il modulo bias e questo strumento ce l'ha?

Prendere un numero casuale a 32 bit e tenere il resto della divisione per la dimensione dell'intervallo rende alcuni risultati leggermente più probabili ogni volta che l'intervallo non divide esattamente 232. Questo strumento scarta qualsiasi estrazione che cade nel resto irregolare e ne fa un'altra, così ogni valore ha esattamente la stessa probabilità. Vale anche per intervalli enormi, gestiti con interi di grandi dimensioni.

Come funziona "Senza ripetizioni" e quando fallisce?

Lo strumento estrae ogni nuovo numero e salta quelli già usciti, oppure, per intervalli piccoli, rimescola l'intero intervallo e prende i primi. Se chiedi più numeri diversi di quanti ne contenga l'intervallo, come 7 da 1 a 6, te lo dice invece di ciclare all'infinito.

Cosa succede se il minimo è maggiore del massimo?

I due valori vengono scambiati e la riga del risultato lo segnala. Scrivere 10 e 1 dà la stessa estrazione di 1 e 10.

Come funzionano i decimali?

Imposta le cifre decimali a 2 e l'intervallo da 0 a 1 diventa i 101 valori 0,00, 0,01 fino a 1,00, tutti ugualmente probabili. I risultati mostrano sempre il numero completo di cifre, quindi 0,50 resta 0,50. I limiti stessi non possono avere più decimali di quelli che hai scelto.

Posso usarlo per una giocata alla lotteria o per tirare un dado?

Per tirare un dado usa da 1 a 6. Per una giocata alla lotteria spunta Senza ripetizioni, per esempio 6 numeri da 1 a 49 ordinati dal più piccolo. Le scelte casuali non danno probabilità migliori di qualsiasi altro numero. Le estrazioni non vengono salvate né inviate da nessuna parte.