Gerador de números aleatórios
Um sorteador para qualquer intervalo: vários números de uma vez e modo sem repetições. Grátis, sem registo, e nada sai do seu dispositivo.
Prima Espaço para gerar
Num sorteio normal, o público não tem como confirmar nada e só lhe resta acreditar em si. Aqui o número é calculado a partir da sua frase, por isso qualquer pessoa repete o sorteio e chega ao mesmo resultado.
- Anuncie a frase antes do sorteio — na publicação, na legenda ou em direto.
- Faça o sorteio com essa frase.
- Quem estiver a ver escreve a mesma frase aqui e obtém o mesmo número.
Substitui o sorteio protegido: os dois não funcionam ao mesmo tempo.
O histórico fica apenas neste navegador. Nunca o vemos nem o enviamos para lado nenhum.
Esta sessão
Contado neste navegador, nunca sai daqui
Carregue em «Gerar» — aparece aqui o histograma de todos os números da sessão, com a média e a dispersão.
Intervalos populares
Os intervalos que as pessoas escrevem mais vezes à mão — cada um abre pronto a usar.
O que este gerador faz
Indique o limite de baixo, indique o limite de cima, carregue no botão. O sorteador devolve um número inteiro, e todos os números do intervalo tinham exatamente a mesma probabilidade de sair. Parece uma coisa pequena, e em parte é — mas quase todos os geradores gratuitos que andam pela Internet erram pelo menos num detalhe, e esses erros só se tornam visíveis quando o que está em jogo é importante.
Aqui há três diferenças. O número é tirado da reserva de entropia criptográfica do sistema operativo e não de uma simples fórmula aritmética. Está corrigido o desvio de arredondamento que faz os números mais pequenos do intervalo sair com mais frequência. E o resultado pode, se quiser, ser provado depois do facto — pode mostrar que saiu realmente dos dados que publicou antes. É isto que precisa quando há um prémio em jogo.
Tudo acontece dentro do navegador. Ao carregar no botão não sai um único pedido para o servidor, não há conta, não há cookies de seguimento e não há registo daquilo que gerou. Pode confirmá-lo por si: abra o inspetor de rede do navegador, gere uma centena de números e veja que não sai nada para fora.
Se escreve sempre o mesmo intervalo, abra a página que já o tem preparado em vez de escrever os limites à mão: de 1 a 10, de 1 a 20, de 1 a 50, de 1 a 100 ou de 1 a 1000. Cada uma abre já configurada.
Sorteador e gerador de números aleatórios são a mesma coisa?
No dia a dia, chama-se sorteador a qualquer ferramenta que escolhe uma opção às cegas: um número, um vencedor de uma lista, um participante entre os comentários. Um gerador de números aleatórios é um sorteador cujas opções são os números inteiros de um intervalo à sua escolha. Portanto sim: a página em que está é um sorteador de números, apenas com um nome mais preciso.
As pessoas procuram isto por nomes diferentes: gerador de números aleatórios, sorteador de números, sorteador online, gerador de números ou simplesmente número aleatório. Por trás de todos eles está a mesma ferramenta — a que está aqui em cima. A diferença é só de hábito: escreve-se «gerador de números» quando basta um número, e acrescenta-se «aleatórios» quando importa deixar claro que ninguém combinou a escolha de antemão.
A diferença aparece quando o que tem de escolher é um nome e não um número. Nesse caso não há razão para numerar os participantes à mão — abra o sorteio de prémios: aceita a lista inteira, escolhe vencedores e suplentes e entrega ao público uma ligação de prova. E se a pergunta pede uma resposta em vez de um número, existe o «Sim ou Não».
Onde as pessoas usam isto
🎁Sorteios de prémios
Numere os participantes, escolha o vencedor e publique uma ligação com que qualquer pessoa repete o mesmo resultado. A página do sorteio protegido explica como a prova funciona.
🎓Aulas
Chame alunos ao quadro sem dar vantagem à primeira fila, divida grupos, distribua números de exercícios. O modo de ecrã inteiro põe os algarismos no projetor.
🎲Jogos de tabuleiro
Um dado perdido deixa de ser problema: há um dado de seis faces e um dado d20, e o modo sem repetições tira peças sem as voltar a pôr no saco.
🏆Desporto e sorteios de lugares
Distribua pistas, defina a ordem de partida, decida quem começa. Para os formatos de lotaria está pronta a lotaria 6 em 49.
🧪Testes e amostras
Escolha linhas ao acaso para verificar, tire uma amostra de uma lista numerada e, para contas de teste, dão jeito o gerador de palavras-passe, o gerador de nicks e o gerador de nomes e apelidos.
🤔Tomar uma decisão
Quando duas opções são realmente equivalentes, pare de sofrer e deixe o número decidir. Para uma única pergunta existe a ferramenta «Sim ou Não».
O que pode fazer com o resultado
- Apresentação em ecrã inteiro. Um toque e o número ocupa o ecrã todo, para que uma sala inteira o leia. Foi feito para projetores, palco e transmissões em direto; nenhum concorrente tem isto.
- Sorteio repetível. Anuncie uma frase-código antes do sorteio e o resultado passa a ser reproduzível: cada espetador escreve a mesma frase e obtém o mesmo número.
- Modo sem repetições. Sorteia sem reposição, que é exatamente o que quer quando está a distribuir números únicos em vez de lançar um dado.
- Estatísticas da sessão ao vivo. Um histograma de tudo o que saiu, com média e dispersão: dá para ver com os próprios olhos que a distribuição é plana.
- Exportação para CSV. Útil quando gerou cinquenta números e precisa deles numa folha de cálculo.
- Leitura em voz alta. O resultado é dito no idioma da página — ajuda na acessibilidade e quando tem as mãos ocupadas.
O que torna um sorteio justo
A justiça não é uma propriedade, são três, e as ferramentas habituais só dão a primeira. A fonte tem de ser imprevisível, a conversão para o seu intervalo tem de ser sem desvios, e o procedimento tem de poder ser verificado por quem não confia em você. Um gerador pode ser perfeitamente aleatório e continuar inútil para um sorteio, porque o público não tem como distinguir um sorteio honesto de um sorteio encenado.
Essa terceira propriedade é coberta por dois modos diferentes, e não faz sentido ligar os dois ao mesmo tempo. O sorteio protegido serve para o caso comum: o servidor escolhe e assina o número, e você mostra ao público uma ligação onde vê exatamente o resultado que você viu. O sorteio repetível serve para quando o espetador tem de verificar o sorteio com as próprias mãos: o resultado é derivado de uma frase-código, por isso qualquer pessoa que a conheça chega ao mesmo número. Anunciar a frase antes do sorteio mantém também a imprevisibilidade: enquanto a frase não é dita, ninguém consegue prever o desfecho.
Como se obtém aleatoriedade a sério
Um computador é uma máquina construída para ser previsível, o que faz do pedido de um número verdadeiramente imprevisível um pedido surpreendentemente incómodo. Há duas famílias de respostas, e a diferença entre elas conta mais do que se costuma pensar.
De onde vem a imprevisibilidade
O sistema operativo mantém uma reserva de entropia: um depósito de ruído recolhido de acontecimentos físicos que ele não consegue antecipar. Os momentos exatos em que as teclas são premidas, as variações nas interrupções do disco e da rede, as oscilações de contadores de hardware e, nos processadores modernos, uma instrução dedicada que mede o ruído térmico dentro do próprio silício. Nada disto é uma fórmula. É a medição do mundo físico, e é isso que torna o resultado imprevisível em vez de apenas complicado.
Este gerador pede bytes dessa reserva ao navegador através da Web Crypto API, com
crypto.getRandomValues(). É a mesma fonte que o navegador usa para criar as chaves de cifra que
protegem a sua sessão no banco.
Porque é que o Math.random não serve
A maioria dos geradores rápidos chama Math.random(). É cómodo, é rápido e é uma fórmula
aritmética pura com um estado interno escondido. Dê-lhe um valor inicial e devolve sempre a mesma sequência.
Observe o que produz durante tempo suficiente e o estado pode ser reconstruído, e a partir daí todos os valores
futuros são conhecidos de antemão. Para embaralhar imagens de fundo, está bem. Para decidir quem recebe um
prémio, não está, e os fabricantes de navegadores dizem-no de forma explícita na própria documentação.
O desvio de arredondamento que quase ninguém corrige
Eis o erro que se esconde à vista de todos. Imagine que tem bytes aleatórios de 0 a 255 e quer um número de 1 a 100. O gesto óbvio é ficar com o resto da divisão por 100 e somar um. Parece inofensivo e está errado: 256 não se divide de forma exata por 100, por isso os valores de 1 a 56 saem mais vezes do que os de 57 a 100. O desvio é pequeno, na ordem de uma parte em duzentas, mas é sistemático, nunca se dilui na média e num sorteio grande torna-se bem real.
Evitamo-lo com amostragem por rejeição: o gerador descarta os valores que caem na cauda desigual e simplesmente sorteia outra vez. Custa alguns microssegundos e dá uma distribuição exatamente uniforme, em vez de aproximadamente uniforme.
Resultado demonstrável, quando há um prémio em jogo
Imprevisível e demonstrável são opostos, e não se pode ter as duas coisas ao mesmo tempo. O truque está em fazê-las pela ordem certa. Ligue o sorteio repetível e o gerador deixa de tirar entropia da reserva e passa a derivar o resultado de uma frase-código que pode anunciar publicamente.
A maneira honesta de usar isto é anunciar a frase primeiro e sortear depois. Costuma usar-se, por exemplo, a cotação de fecho de uma ação amanhã ou o número de um sorteio futuro da lotaria. Enquanto a frase não é dita, ninguém conhece o desfecho, você incluído, porque o valor ainda não existe. Quando se torna público, faz o sorteio, e qualquer espetador escreve a mesma frase e chega ao mesmo vencedor.
Se o público não precisa de verificar à mão, o sorteio protegido é mais simples: o servidor escolhe e assina o número, e a você basta partilhar a ligação para a página do resultado.
Porque é que o mesmo número sai várias vezes
Esta é a queixa mais comum de todos os geradores de números aleatórios que já se fizeram, e em quase todos os casos o gerador está inocente. A aleatoriedade a sério forma grupos. Não tem memória, por isso não tem razão nenhuma para evitar um valor que acabou de sair. Lance um dado seis vezes e a probabilidade de ver as seis faces é de apenas um e meio por cento; o resultado esmagadoramente provável é que alguma coisa se repita e alguma coisa falte.
A intuição humana espera uma dispersão regular e lê os grupos como uma avaria. Os casinos vivem deste mal-entendido há muito tempo. Se precisa que cada valor apareça exatamente uma vez, isso é outro requisito e tem o seu próprio modo: passe para «sem repetições» e o gerador sorteia sem reposição, retirando da reserva cada número que sai.
Perguntas frequentes
Qual é a diferença entre um sorteador e um gerador de números aleatórios?
Nenhuma, a não ser o hábito de lhes dar nomes diferentes. Sorteador é a palavra corrente para qualquer ferramenta que escolhe uma opção às cegas; um gerador de números aleatórios é um sorteador cujas opções são os números inteiros de um intervalo. Se o que precisa de escolher é um nome e não um número, use o sorteio de prémios: trabalha com a lista de participantes e devolve uma ligação de prova.
Isto é realmente aleatório ou só parece?
O número é tirado da reserva de entropia criptográfica do sistema operativo através da Web Crypto API — a mesma fonte que serve para gerar chaves de cifra. Essa reserva é alimentada por ruído físico, como os tempos das interrupções e a medição do ruído térmico do hardware, e não por uma fórmula. Aplicamos ainda amostragem por rejeição, para que a conversão para o seu intervalo não introduza desvios.
Alguém pode prever ou manipular o meu resultado?
No modo normal, não. O sorteio acontece no seu dispositivo com entropia que nunca vemos e nada é transmitido. No modo de sorteio repetível, o resultado torna-se reproduzível de propósito — é esse o objetivo — por isso qualquer pessoa que conheça a frase-código chega à mesma resposta. Use esse modo apenas quando tencionar anunciar a frase.
Porque é que o mesmo número saiu duas vezes seguidas?
Porque é isto que a aleatoriedade parece. Cada sorteio é independente e não guarda memória do anterior, por isso repetições e falhas são normais e não suspeitas. Se precisa que cada valor apareça exatamente uma vez, mude para o modo sem repetições, que sorteia sem reposição.
Qual é o intervalo máximo que posso usar?
Até cerca de nove mil milhões de milhões em qualquer sentido, e os limites negativos são aceites. Acima disso os navegadores perdem precisão nos números inteiros, por isso limitamos o que se pode escrever em vez de devolver discretamente um número errado.
É grátis e é preciso registo?
É grátis, sem limites e sem conta. O site vive da publicidade, colocada à parte da ferramenta. Não há versão paga, não há marcas de água e não há nada para desbloquear.
Funciona sem Internet?
Sim. Depois de a página carregar, o gerador não precisa de ligação, porque o cálculo acontece localmente. Adicione a página ao ecrã principal e continua a funcionar num avião ou numa cave.
Guardam os números que eu gero?
Não. Nada é enviado para o servidor, por isso não há nada para guardar. As estatísticas da sessão e o histórico dos sorteios ficam no armazenamento local do navegador e desaparecem quando limpa os dados do site.
Posso usar isto num sorteio com um prémio a sério?
Pode, e nesse caso é melhor usar a ferramenta de sorteio protegido em vez desta página. Ela fixa a lista de participantes com uma impressão digital antes do sorteio e produz uma página de verificação que o público pode conferir sozinho.
Qual é a diferença entre isto e o gerador de números do Google?
O Google mostra uma roda simples nos próprios resultados de pesquisa — dois limites e um botão; é isso que as pessoas têm em mente quando procuram «gerador de números aleatórios Google». Para tirar um número para um jogo de tabuleiro basta; para o resto não. Aqui há vários números de uma vez, modo sem repetições, ecrã cheio para mostrar a uma sala inteira, exportação para CSV, estatísticas da sessão e uma ligação de prova para o sorteio com prémio.