Com ou sem repetição
A escolha muda o que você está sorteando. Sem repetir é o caso de escolher pessoas, prêmios ou lugares: cada número sai no máximo uma vez, como tirar papéis de um saco sem devolver. Com repetição é o caso de simular dados ou eventos independentes: cada sorteio ignora os anteriores, como rolar o mesmo dado várias vezes.
Se você pedir mais números diferentes do que o intervalo permite — dez números distintos entre 1 e 5, por exemplo — a ferramenta avisa em vez de inventar uma saída. É proposital: preencher com repetição sem dizer nada seria entregar um resultado errado com cara de certo.
Sortear pessoas por número
É o uso mais frequente em turma grande, e ele tem uma armadilha. Se você sorteia "um número de 1 a 40" para uma lista de chamada, precisa que a lista realmente vá de 1 a 40 sem buracos. Faltou o número 17 porque alguém saiu da turma? Então o sorteio tem uma chance em quarenta de cair no vazio, e você vai sortear de novo — o que, feito repetidamente, deixa de ser um sorteio limpo aos olhos de quem assiste.
O conserto é simples: sorteie sobre a lista de nomes em vez da faixa de números. O dado de nomes aceita colar a lista inteira e não tem buraco possível.
Por que não usar a função aleatória da planilha
Planilhas resolvem o caso simples e criam dois problemas. O primeiro é que a função recalcula: um toque em qualquer célula e o resultado muda, o que é péssimo quando o número precisa ser registrado. O segundo é a fonte de aleatoriedade — geradores de planilha são bons para simulação, e não foram feitos para resistir a quem tenta prever a sequência. Para um sorteio doméstico, nenhum dos dois pontos é grave. Se o resultado vai ser mostrado a alguém que não confia em você, os dois passam a importar.
Aqui cada número vem de crypto.getRandomValues(), com descarte dos valores que enviesariam a conversão para o intervalo pedido. O detalhe de por que esse descarte é necessário está em como funciona um dado virtual.
Intervalos que valem lembrar
- 1 a 6 — equivale a um dado comum.
- 1 a 100 — percentual, para tabelas de evento.
- 0 a 9 — um dígito, para montar código ou senha numérica de uso único.
- 1 a 60, seis números sem repetir — a mesma estrutura de uma aposta de loteria, útil para mostrar por que acertar é raro. Não vendemos nem intermediamos aposta.
Ferramentas relacionadas
- Dado online — quando o intervalo é 1 a 6 e você quer ver o dado.
- Dados de RPG — para somar vários dados com modificador.
- Dado de nomes — para sortear a pessoa direto, sem passar por número.