tooliv

Gerador de números aleatórios

Gere números aleatórios com intervalo e quantidade personalizados

Ordenar

Gerador de números aleatórios

Quão aleatório é Math.random()?

Pseudo-aleatório, bem distribuído estatisticamente. Para segurança use crypto.getRandomValues().

Fórmula para jogar um dado?

Math.floor(Math.random() * 6) + 1 dá inteiros 1-6 com probabilidade igual.

Como gerar números de loteria?

Use Fisher-Yates em um array [1..45] e pegue os primeiros 6 elementos.

Números aleatórios: Verdadeiro vs Pseudo

Computadores geralmente usam números pseudo-aleatórios. Math.random() usa algoritmo determinístico baseado em semente.

Por que Math.random() não é seguro para senhas?

Se um atacante conhece a semente, pode reproduzir todos os valores "aleatórios". Use crypto.getRandomValues() para segurança.

Embaralhamento Fisher-Yates: Aleatório sem repetição

Fisher-Yates percorre o array de trás para frente trocando posições. Complexidade O(n).

Distribuição uniforme e sua importância

Bons geradores produzem distribuição uniforme. Fórmula inteira: Math.floor(Math.random() * (max - min + 1)) + min.

Aleatoriedade em jogos e apostas

A vantagem da casa nos cassinos é design matemático, não trapaça em números aleatórios.

Perguntas frequentes

Quão aleatório é Math.random()?

Pseudo-aleatório, bem distribuído estatisticamente. Para segurança use crypto.getRandomValues().

Fórmula para jogar um dado?

Math.floor(Math.random() * 6) + 1 dá inteiros 1-6 com probabilidade igual.

Como gerar números de loteria?

Use Fisher-Yates em um array [1..45] e pegue os primeiros 6 elementos.

Ferramentas relacionadas