# Gerador de números aleatórios

> Gerador de números aleatórios grátis: seguro ou com semente, seis distribuições, pesos, notação de dados e estatísticas ao vivo. 100% no navegador.

URL: https://acrafto.com/pt/gerador-numeros-aleatorios/  
Updated: 2026-08-28

Tools are interactive browser apps; there is no public API, no endpoints to call and no server-side processing. To use a tool, open its HTML page in a browser.

## Como funciona o Gerador de Números Aleatórios?

O gerador oferece **duas fontes de aleatoriedade**, e você escolhe qual se encaixa na tarefa.

**Aleatório seguro** extrai entropia do seu sistema operacional através da Web Crypto API (`crypto.getRandomValues()`). É imprevisível e irrepetível — a escolha certa para um sorteio real, em que ninguém deve conseguir adivinhar o resultado com antecedência.

**Com semente** transforma qualquer texto digitado em um estado inicial para um gerador determinístico (xoshiro128\*\*). A mesma semente sempre produz os mesmos números, para que qualquer pessoa possa reproduzir seu sorteio e confirmar que você obteve o que diz ter obtido.

Ambos rodam **inteiramente no seu navegador**. Nenhum número chega a um servidor.

### Sem viés de módulo

A maioria dos geradores simples mapeia um valor aleatório de 32 bits no seu intervalo com `value % range`. Quando o intervalo não divide 2³² de forma exata, os números mais baixos aparecem um pouco mais que os demais. Ao longo de milhares de sorteios, isso é mensurável.

Este gerador usa **amostragem por rejeição**: valores que cairiam na cauda desigual são descartados e sorteados novamente. Cada número do seu intervalo tem exatamente a mesma chance. Você mesmo pode verificar isso com o teste de uniformidade integrado.

## O que o gerador pode fazer

### Intervalo

- **Mínimo e máximo** — qualquer intervalo inteiro ou decimal, incluindo valores negativos
- **Quantos números** — de 1 até **1.000.000** em um único sorteio
- **Sem repetição** — cada número aparece no máximo uma vez, como em um sorteio real
- **Ordenação** — ordem de sorteio, crescente ou decrescente; a ordenação nunca interfere na aleatoriedade
- **Passo** — restringe os resultados a múltiplos de um valor, para que apareçam apenas 0, 5, 10, 15
- **Excluir números** — liste valores que nunca devem ser sorteados

### Modo

- **Fonte de aleatoriedade** — segura (Web Crypto) ou com semente (reproduzível)
- **Semente** — qualquer texto; a mesma semente sempre reproduz o mesmo sorteio
- **Distribuição** — uniforme, normal (gaussiana), exponencial, Poisson, triangular, binomial
- **Pesos** — dê a números escolhidos uma chance maior, escritos como `number:weight`
- **Notação de dados** — `3d6+2`, `d20`, `2d20kh1` para vantagem, `4d6dl1` para gerar atributos

### Saída

- **Separador** — vírgula, espaço, ponto e vírgula, tabulação, nova linha, ou qualquer texto digitado
- **Sistema numérico** — decimal, binário, octal, hexadecimal ou base 36
- **Preenchimento com zeros** — transforme 7 em 007 para números de bilhete ou ID
- **Prefixo e sufixo** — envolva cada número em texto fixo
- **Modelo** — `{n}` é o número, `{i}` é sua posição, então `user{n}` vira `user42`
- **Copiar como** — texto simples, CSV, JSON ou uma tabela Markdown

### Estatísticas

Cada sorteio é resumido em tempo real: soma, média, mediana, menor, maior, desvio padrão, além de quantos resultados são pares, ímpares ou primos. Um histograma mostra o formato da distribuição, e um **teste qui-quadrado** indica se os resultados realmente correspondem a uma distribuição uniforme.

### Histórico

Os últimos 50 sorteios ficam guardados no seu navegador, com as configurações que os geraram — um clique restaura qualquer um deles. Configurações usadas com frequência podem ser salvas como predefinições nomeadas, e tudo pode ser exportado para um arquivo JSON que você importa em outra máquina. Nada é armazenado em nenhum outro lugar além deste navegador.

### Teclado

Pressione **Espaço** ou **R** para sortear novamente sem precisar do mouse.

## Predefinições rápidas

| Predefinição | Intervalo | Qtd. | Uso |
| --- | --- | --- | --- |
| 🎲 Dado | 1–6 | 1 | Jogos de tabuleiro, decisões |
| 🪙 Moeda | 0–1 | 1 | Cara ou coroa |
| 🎰 Loteria | 1–49 | 6 | Únicos, ordenados, como um sorteio real |
| 💯 1–100 | 1–100 | 1 | Porcentagens, divisões A/B |
| 🔢 PIN | 0–9 | 4 | Quatro dígitos, repetição permitida |

## Sorteios reproduzíveis

O modo com semente existe para os momentos em que “confie em mim, foi aleatório” não é suficiente.

Escolha uma semente que todos possam combinar com antecedência — uma data, uma hashtag, o preço de fechamento de algo público — e anuncie-a antes do sorteio. Qualquer pessoa pode então digitar a mesma semente com as mesmas configurações e obter o resultado idêntico. Você não provou que os números eram imprevisíveis; provou que não repetiu o sorteio até gostar da resposta.

É também assim que se torna a aleatoriedade repetível em trabalhos que precisam ser verificados: um plano de amostragem que um colega pode reexecutar, um conjunto de fixtures de teste que permanece estável em uma suíte de testes, um exercício em sala de aula em que todos os alunos recebem os mesmos dados “aleatórios”.

## Escolhendo uma distribuição

**Uniforme** dá a cada número do intervalo a mesma chance. É o que as pessoas geralmente entendem por aleatório, e é o padrão.

As outras concentram os resultados em torno de um valor, que é o que as grandezas do mundo real costumam fazer:

- **Normal (gaussiana)** — alturas, erros de medição, notas de testes. Defina uma média e um desvio padrão.
- **Exponencial** — tempos de espera entre eventos independentes.
- **Poisson** — contagens de eventos em um intervalo fixo: chegadas por hora, defeitos por lote.
- **Triangular** — quando você conhece o mínimo, o máximo e o valor mais provável, mas nada além disso. Comum em estimativas de projeto.
- **Binomial** — sucessos em um número fixo de tentativas com uma probabilidade fixa.

Toda distribuição é limitada ao intervalo definido, então uma cauda gaussiana longa não consegue escapar do seu mínimo e máximo.

## Onde os números aleatórios são usados

### Jogos e entretenimento

- **Jogos de tabuleiro** — rolagens de dados, ordem de turno
- **RPGs de mesa** — `4d6dl1` para atributos, `2d20kh1` para vantagem
- **Sorteios/brindes** — escolher um vencedor, com uma semente para que os participantes possam verificar
- **Quizzes** — ordem aleatória das perguntas

### Estatística e ciência

- **Amostragem** — extração de uma amostra da população sem repetição
- **Testes A/B** — atribuição de participantes a grupos
- **Simulação de Monte Carlo** — estimativa de probabilidade por repetição
- **Bootstrapping** — reamostragem para estimar incerteza

### Desenvolvimento

- **Dados de teste** — um milhão de valores, gerados em segundo plano para a página continuar responsiva
- **Fixtures** — com semente, para que um teste que falha, falhe da mesma forma duas vezes
- **IDs aleatórios** — com preenchimento, prefixos ou um modelo
- **Testes de carga** — identificadores baseados em modelo como `user{n}@example.com`

## Números verdadeiramente aleatórios vs. pseudoaleatórios

|  | `Math.random()` | `crypto.getRandomValues()` | Com semente (xoshiro128\*\*) |
| --- | --- | --- | --- |
| **Tipo** | Pseudoaleatório | Criptograficamente seguro | Pseudoaleatório, determinístico |
| **Fonte de entropia** | Semente escolhida pelo motor | CSPRNG do sistema | Seu texto de semente |
| **Previsível?** | Potencialmente | Não | Sim, por design |
| **Repetível?** | Não | Não | Sempre |
| **Bom para segurança** | Não | Sim | Não |
| **Bom para estatística** | Depende | Sim | Sim |
| **Bom para sorteios verificáveis** | Não | Não | Sim |

`Math.random()` não é usado em nenhuma parte desta ferramenta.

## Sorteios sem repetição

Com **Sem repetição** ativado, cada número do intervalo aparece no máximo uma vez. Ideal para:

- **Sorteios** — ninguém pode ganhar duas vezes
- **Permutações** — embaralhar um conjunto de itens
- **Bingo** — chamar números que permanecem chamados
- **Loteria** — seis números distintos de 1 a 49

O sorteio usa um embaralhamento parcial de Fisher–Yates, então pedir 6 números de um milhão é tão rápido quanto pedir 6 de 49 — ele nunca fica em loop tentando evitar uma colisão. Se você pedir mais números únicos do que o intervalo pode fornecer, o gerador avisa em vez de travar.

## Exportando resultados

Copie os números como texto simples com qualquer separador que preferir, como **CSV** para uma planilha, como **JSON** para código, ou como uma **tabela Markdown** para documentação. Sorteios muito grandes permanecem inteiros na memória e são copiados por completo, mesmo que apenas os primeiros milhares sejam exibidos na tela.

## Gerando números aleatórios no seu próprio código

### JavaScript / TypeScript

```
// Inteiro criptograficamente seguro em [min, max], sem viés de módulo.
// O ingênuo `value % range` favorece números baixos quando o intervalo
// não divide 2**32 de forma exata - por isso rejeitamos valores na cauda desigual.
function randomInt(min, max) {
  const range = max - min + 1;
  const limit = Math.floor(0x100000000 / range) * range;
  const arr = new Uint32Array(1);
  let value;
  do {
    crypto.getRandomValues(arr);
    value = arr[0];
  } while (value >= limit);
  return min + (value % range);
}
```

### Python

```
import random
import secrets

# Criptograficamente seguro, sem viés de módulo
n = secrets.randbelow(max - min + 1) + min

# Reproduzível: a mesma semente sempre gera a mesma sequência
rng = random.Random('my-seed')
n = rng.randint(min, max)

# Sem repetição
sample = random.sample(range(min, max + 1), count)
```

### PHP

```
// Criptograficamente seguro (PHP 7+), sem viés de módulo
$n = random_int($min, $max);

// Reproduzível
mt_srand(crc32('my-seed'));
$n = mt_rand($min, $max);
```

## Perguntas Frequentes (FAQ)

### O resultado é verdadeiramente aleatório?

No modo seguro, sim. Ele vem de `crypto.getRandomValues()`, um gerador criptograficamente seguro alimentado pelo pool de entropia do seu sistema operacional. Os resultados são uniformemente distribuídos e imprevisíveis. O modo com semente é deliberadamente o oposto: é reproduzível, que é justamente o objetivo.

### Quantos números posso gerar de uma vez?

Até 1.000.000. Sorteios acima de 50.000 são calculados em um worker em segundo plano para a página continuar responsiva, e a tela mostra os primeiros 2.000 com uma contagem do restante — copiar ainda assim entrega tudo.

### Posso gerar números negativos?

Sim. Defina um mínimo negativo. Todo o intervalo de números do JavaScript funciona, incluindo intervalos negativos em ambas as extremidades.

### A ordenação afeta a aleatoriedade?

Não. Os números são sorteados primeiro e ordenados depois. A ordenação muda apenas a ordem em que você os vê.

### A mesma semente vai gerar os mesmos números amanhã?

Sim, e em qualquer outro dispositivo ou navegador. O gerador com semente é totalmente determinístico e depende apenas da sua semente e configurações.

### O que o teste de uniformidade me diz?

Ele executa um teste qui-quadrado comparando com que frequência cada número realmente saiu contra a frequência esperada. Se a estatística permanecer abaixo do valor crítico, os resultados são consistentes com uma distribuição uniforme. É preciso um intervalo razoavelmente estreito e sorteios suficientes — pelo menos cinco por valor possível — para dizer algo significativo.

### Como funcionam os pesos?

Escreva-os como pares `number:weight`, por exemplo `1:5, 2:1, 3:1`. Aqui, 1 tem cinco vezes mais chance que 2 ou 3. Números não listados recebem peso zero e nunca são sorteados.

### Qual notação de dados é suportada?

`3d6` rola três dados de seis lados. Adicione um modificador com `3d6+2`. Mantenha ou descarte dados com `kh`, `kl`, `dh`, `dl` — assim, `2d20kh1` mantém o maior de dois d20 (vantagem) e `4d6dl1` descarta o menor de quatro d6.

### Meu histórico é armazenado em algum lugar?

Somente neste navegador, no local storage. Nunca chega a um servidor, nunca sincroniza com outro dispositivo, e desaparece se você limpar os dados do site. Exporte para JSON se quiser mantê-lo ou movê-lo.

## Other languages

- Čeština (cs): [Generátor náhodných čísel](https://acrafto.com/cs/generator-nahodnych-cisel/) ([Markdown](https://acrafto.com/cs/generator-nahodnych-cisel/index.md))
- Slovenčina (sk): [Generátor náhodných čísel](https://acrafto.com/sk/generator-nahodnych-cisel/) ([Markdown](https://acrafto.com/sk/generator-nahodnych-cisel/index.md))
- English (en): [Random Number Generator](https://acrafto.com/en/online-random-number-generator/) ([Markdown](https://acrafto.com/en/online-random-number-generator/index.md))
- Deutsch (de): [Zufallszahlen Generator](https://acrafto.com/de/zufallszahlen-generator-online/) ([Markdown](https://acrafto.com/de/zufallszahlen-generator-online/index.md))
- Français (fr): [Générateur de nombres aléatoires](https://acrafto.com/fr/generateur-nombres-aleatoires/) ([Markdown](https://acrafto.com/fr/generateur-nombres-aleatoires/index.md))
- Español (es): [Generador de números aleatorios](https://acrafto.com/es/generador-numeros-aleatorios-online/) ([Markdown](https://acrafto.com/es/generador-numeros-aleatorios-online/index.md))
- Italiano (it): [Generatore di numeri casuali](https://acrafto.com/it/generatore-numeri-casuali/) ([Markdown](https://acrafto.com/it/generatore-numeri-casuali/index.md))
- Nederlands (nl): [Random getal generator](https://acrafto.com/nl/generator-willekeurige-getallen/) ([Markdown](https://acrafto.com/nl/generator-willekeurige-getallen/index.md))
- Polski (pl): [Generator liczb losowych](https://acrafto.com/pl/generator-liczb-losowych-online/) ([Markdown](https://acrafto.com/pl/generator-liczb-losowych-online/index.md))
- Română (ro): [Generator numere aleatoare](https://acrafto.com/ro/generator-numere-aleatoare-online/) ([Markdown](https://acrafto.com/ro/generator-numere-aleatoare-online/index.md))
- Magyar (hu): [Véletlenszám generátor](https://acrafto.com/hu/veletlen-szam-generator/) ([Markdown](https://acrafto.com/hu/veletlen-szam-generator/index.md))
- Ελληνικά (el): [Γεννήτρια τυχαίων αριθμών](https://acrafto.com/el/generator-tychaion-arithmon-online/) ([Markdown](https://acrafto.com/el/generator-tychaion-arithmon-online/index.md))
- Български (bg): [Генератор на случайни числа](https://acrafto.com/bg/generator-sluchayni-chisla/) ([Markdown](https://acrafto.com/bg/generator-sluchayni-chisla/index.md))
- Hrvatski (hr): [Generator slučajnih brojeva](https://acrafto.com/hr/generator-nasumicnih-brojeva/) ([Markdown](https://acrafto.com/hr/generator-nasumicnih-brojeva/index.md))
- Slovenščina (sl): [Generator naključnih števil](https://acrafto.com/sl/generator-nakljucnih-stevil/) ([Markdown](https://acrafto.com/sl/generator-nakljucnih-stevil/index.md))
- Eesti (et): [Juhuslike arvude generaator](https://acrafto.com/et/juhuslike-arvude-generaator/) ([Markdown](https://acrafto.com/et/juhuslike-arvude-generaator/index.md))
- Latviešu (lv): [Gadījuma skaitļu ģenerators](https://acrafto.com/lv/gadijuma-skaitlu-generators/) ([Markdown](https://acrafto.com/lv/gadijuma-skaitlu-generators/index.md))
- Lietuvių (lt): [Atsitiktinių skaičių generatorius](https://acrafto.com/lt/atsitiktiniu-skaiciu-generatorius/) ([Markdown](https://acrafto.com/lt/atsitiktiniu-skaiciu-generatorius/index.md))
- Svenska (sv): [Slumptalsgenerator](https://acrafto.com/sv/slumptalsgenerator/) ([Markdown](https://acrafto.com/sv/slumptalsgenerator/index.md))
- Dansk (da): [Tilfældighedsgenerator](https://acrafto.com/da/tilfaeldighedsgenerator-online/) ([Markdown](https://acrafto.com/da/tilfaeldighedsgenerator-online/index.md))
- Suomi (fi): [Satunnaislukugeneraattori](https://acrafto.com/fi/satunnaislukugeneraattori/) ([Markdown](https://acrafto.com/fi/satunnaislukugeneraattori/index.md))
- Norsk (no): [Tilfeldig tallgenerator](https://acrafto.com/no/tilfeldig-tallgenerator/) ([Markdown](https://acrafto.com/no/tilfeldig-tallgenerator/index.md))
- Українська (uk): [Генератор випадкових чисел](https://acrafto.com/uk/generator-vypadkovyh-chysel/) ([Markdown](https://acrafto.com/uk/generator-vypadkovyh-chysel/index.md))
- Русский (ru): [Генератор случайных чисел](https://acrafto.com/ru/generator-sluchajnyh-chisel/) ([Markdown](https://acrafto.com/ru/generator-sluchajnyh-chisel/index.md))
- Српски (sr): [Generator nasumičnih brojeva](https://acrafto.com/sr/generator-nasumicnih-brojeva/) ([Markdown](https://acrafto.com/sr/generator-nasumicnih-brojeva/index.md))
- Македонски (mk): [Генератор на случајни броеви](https://acrafto.com/mk/generator-slucajni-broevi/) ([Markdown](https://acrafto.com/mk/generator-slucajni-broevi/index.md))
- Bosanski (bs): [Generator nasumičnih brojeva](https://acrafto.com/bs/generator-nasumicnih-brojeva/) ([Markdown](https://acrafto.com/bs/generator-nasumicnih-brojeva/index.md))
- Shqip (sq): [Gjenerator numrash të rastësishëm](https://acrafto.com/sq/gjenerator-numrash-rastesishem/) ([Markdown](https://acrafto.com/sq/gjenerator-numrash-rastesishem/index.md))
- Türkçe (tr): [Rastgele sayı üretici](https://acrafto.com/tr/rastgele-sayi-uretici/) ([Markdown](https://acrafto.com/tr/rastgele-sayi-uretici/index.md))
- 日本語 (ja): [乱数生成ツール](https://acrafto.com/ja/ransu-generator/) ([Markdown](https://acrafto.com/ja/ransu-generator/index.md))
- 한국어 (ko): [랜덤 숫자 생성기](https://acrafto.com/ko/random-number-generator/) ([Markdown](https://acrafto.com/ko/random-number-generator/index.md))
- العربية (ar): [مولد أرقام عشوائية](https://acrafto.com/ar/random-number-generator/) ([Markdown](https://acrafto.com/ar/random-number-generator/index.md))
- हिन्दी (hi): [रैंडम नंबर जनरेटर](https://acrafto.com/hi/random-number-generator/) ([Markdown](https://acrafto.com/hi/random-number-generator/index.md))
- Bahasa Indonesia (id): [Generator angka acak](https://acrafto.com/id/generator-angka-acak-online/) ([Markdown](https://acrafto.com/id/generator-angka-acak-online/index.md))
- Tiếng Việt (vi): [Tạo số ngẫu nhiên](https://acrafto.com/vi/cong-cu-tao-so-ngau-nhien/) ([Markdown](https://acrafto.com/vi/cong-cu-tao-so-ngau-nhien/index.md))
- ไทย (th): [สุ่มตัวเลข](https://acrafto.com/th/random-number-generator/) ([Markdown](https://acrafto.com/th/random-number-generator/index.md))
- עברית (he): [מחולל מספרים אקראיים](https://acrafto.com/he/random-number-generator/) ([Markdown](https://acrafto.com/he/random-number-generator/index.md))
