O que é um lançamento de moeda, de verdade?
Um lançamento de moeda é o bit aleatório original. Cara ou coroa, 50/50, decidido no tempo que uma moeda leva para girar pelo ar. As pessoas vêm resolvendo discussões e desempates assim desde que os romanos chamavam isso de navia aut caput — navio ou cabeça — referindo-se ao desenho nas moedas de bronze deles. A matemática não mudou desde então.
O que mudou é que você provavelmente não carrega mais uma moeda. Um lançamento digital precisa simular o mesmo resultado justo e imprevisível de 50/50 sem nenhuma moeda física na sala. Parece trivial. Quase nunca é, porque a maioria dos softwares usa geradores de números aleatórios que não são de fato aleatórios — são sequências que parecem aleatórias a menos que você saiba a fórmula.
Este Cara ou Coroa usa crypto.getRandomValues(), o gerador de números aleatórios criptograficamente seguro do navegador. A mesma fonte que os bancos usam para tokens de sessão. Cada lançamento puxa um byte novo do pool de entropia do sistema operacional e o reduz a um único bit. Sem semente, sem padrão, sem como prever o próximo resultado a partir dos anteriores. Tão justo quanto uma moeda justa consegue ser.
Como usar o Cara ou Coroa
Abra o Cara ou Coroa e aperte lançar. É isso.
- Aperte o botão de lançar (ou pressione espaço)
- Veja o resultado: cara ou coroa
- Aperte de novo para o próximo lançamento — o contador acompanha seu total acumulado
- Zere o contador quando quiser começar do zero
O total acumulado é útil para quem tem curiosidade se seus lançamentos são mesmo equilibrados. Depois de 100 lançamentos você deveria ver algo próximo de 50/50 — mas provavelmente não exatamente 50/50. Já chegamos ao porquê.
crypto.getRandomValues vs Math.random — por que importa
O JavaScript vem com duas formas de obter um número aleatório, e elas não são equivalentes.
Math.random() é um gerador de números pseudoaleatórios. Ele produz uma sequência determinística a partir de um estado interno oculto. A sequência parece aleatória, e para a maioria dos casos de uso — embaralhar uma animação, escolher uma cor aleatória para um gráfico — está tudo bem. Mas não é imprevisível. Duas páginas rodando o mesmo gerador a partir do mesmo estado inicial produziriam os mesmos números "aleatórios". A saída também é tendenciosa de formas sutis que só importam em larga escala.
crypto.getRandomValues() puxa bytes do pool de entropia criptograficamente seguro do sistema operacional. No hardware moderno, esse pool é alimentado por ruído térmico, movimentos do mouse, tempos de pacotes de rede e meia dúzia de outras fontes físicas. Não há estado interno para vazar e nenhuma sequência para prever. É a mesma fonte que o navegador usa quando gera uma chave TLS.
Para um lançamento de moeda, a diferença raramente importa em um único lançamento. Importa enormemente ao longo de milhões de lançamentos, que é o único contexto onde você notaria um gerador tendencioso. Usamos crypto.getRandomValues() porque não há boa razão para não usar — ambas as funções levam aproximadamente o mesmo tempo, e uma delas te dá uma garantia de justiça que você pode verificar.
Se quiser verificar isso você mesmo, abra o console do navegador na página do Cara ou Coroa e rode crypto.getRandomValues(new Uint8Array(1)). Você vai obter um número entre 0 e 255. Pegamos esse número, verificamos se é par ou ímpar (ou equivalentemente, se o bit mais baixo é 0 ou 1), e esse único bit decide cara ou coroa.
O problema das sequências: por que 10 lançamentos raramente parecem "aleatórios"
Aqui está um experimento que a maioria das pessoas erra. Lance uma moeda 10 vezes. Anote os resultados. Mostre para um amigo. Pergunte: "isso parece aleatório?"
Se a sequência for C K C K C C K C K K, a maioria diz que sim. Se for C C C C K C C K K K, a maioria diz que não — caras demais em sequência, isso não pode ser aleatório. Ambas as sequências são igualmente prováveis. Ambas têm a mesma razão geral de caras/coroas. A segunda apenas parece menos aleatória porque os humanos subestimam gravemente quão frequentes são as sequências em dados aleatórios reais.
Exemplo prático. Lançamos este Cara ou Coroa dez vezes. Aqui está a sequência real que obtivemos:
C, C, K, C, C, C, K, K, K, C
Seis caras, quatro coroas. Maior sequência de caras: 3 seguidas (lançamentos 4–6). Maior sequência de coroas: 3 seguidas (lançamentos 7–9).
Parece manipulado, certo? Não é. A probabilidade de obter pelo menos uma sequência de 3 ou mais em 10 lançamentos de uma moeda justa é de cerca de 82%. A maioria das sequências de dez lançamentos contém uma sequência desse tamanho. Se você não vê uma, esse é na verdade o resultado incomum.
Aqui estão as probabilidades aproximadas de ver diferentes comprimentos máximos de sequência em uma sequência de 10 lançamentos:
| Maior sequência de um lado em 10 lançamentos | Probabilidade aproximada | Como isso parece |
|---|---|---|
| 1 em sequência (alternância perfeita, como C K C K C K C K C K) | ≈ 0,2% | Tão improvável que quase nunca acontece com uma moeda justa |
| 2 em sequência no máximo | ≈ 7% | Raro; pareceria "muito aleatório" a um olho humano |
| 3 em sequência no máximo | ≈ 38% | Comum — a típica sequência que "parece aleatória" |
| 4 em sequência pelo menos uma vez | ≈ 45% | Quase um cara ou coroa em si; parece "tendencioso" para humanos mas não é |
| 5 ou mais em sequência pelo menos uma vez | ≈ 22% | Aproximadamente 1 em 5 sequências de 10 lançamentos; parece obviamente manipulado |
| 6 ou mais em sequência pelo menos uma vez | ≈ 11% | 1 em 9; surpreendentemente comum |
A lição: sequências longas não são evidência de uma moeda quebrada. São evidência de uma moeda normal. Se você lançou 100 vezes e nunca teve uma sequência de 5 ou mais em nenhuma direção, esse seria o resultado surpreendente.
A falácia do apostador
Você lança cara quatro vezes seguidas. Qual é a chance do próximo lançamento ser coroa?
50%. A mesma de qualquer outro lançamento. A moeda não lembra dos resultados anteriores. Ela não pode "dever" uma coroa para você. Esta é a falácia do apostador — a intuição de que resultados aleatórios passados afetam os futuros — e é um dos erros cognitivos mais caros que os humanos cometem. Os cassinos dependem dela.
Cada lançamento de moeda é independente. A probabilidade de CCCCC (cinco caras seguidas) no início de uma sequência é 1/32. Mas a probabilidade de obter outra cara depois de já ter lançado CCCC ainda é 1/2. Os lançamentos anteriores aconteceram. Eles não influenciam o próximo.
Isso importa para qualquer uso honesto de um lançamento de moeda. Se você está usando lançamentos para tomar uma decisão — devemos pedir pizza ou sushi? — não fique lançando até obter a resposta que você queria. Isso anula todo o propósito de deixar o acaso decidir. Lance uma vez, aceite o resultado.
Para o que as pessoas realmente usam um lançamento de moeda
O Cara ou Coroa é usado para mais do que desempate. Alguns casos comuns:
- Decidir entre duas opções. Pizza ou sushi. Filme A ou filme B. O uso clássico, e ainda o melhor. Dois resultados, peso igual, sem pensar demais.
- Remover seu próprio viés de uma escolha difícil. Se você lança uma moeda e imediatamente se sente decepcionado com o resultado, você aprendeu algo — você já sabia qual opção queria. O lançamento revela preferências que você não estava admitindo.
- Resolver jogos e esportes. Início no futebol americano, saque no tênis, primeira escolha em um draft. Moedas decidem quem começa primeiro em praticamente toda estrutura competitiva inventada antes dos computadores.
- Amostragem aleatória. "Lance uma moeda — se for cara, inclua esta linha na amostra." Forma rápida de tirar uma amostra aleatória de 50% de qualquer coisa.
- Ensinar probabilidade. Lançamentos de moeda são o exemplo de sala de aula mais limpo de ensaios independentes, valor esperado e lei dos grandes números. Rode uma centena e veja a razão convergir.
Para decisões com mais de duas opções, você vai querer uma ferramenta diferente. O Rolador de Dados lida com 4, 6, 8 ou 20 resultados. O Sorteador de Nomes escolhe um item de uma lista. O Embaralhador de Lista embaralha uma lista inteira em ordem aleatória.
E quanto a "melhor de três"?
Se um único lançamento parece de variância muito alta, "melhor de três" reduz o ruído. Três lançamentos, e o lado que chegar primeiro a 2 ganha. A probabilidade de cada lado ganhar ainda é 50% — a moeda subjacente é a mesma — mas a dispersão dos resultados possíveis é mais estreita.
A matemática: melhor de três é apenas "primeiro a 2 caras ou 2 coroas em uma série de lançamentos independentes". Qualquer lado ganha assim que conseguir o segundo. A maioria das séries termina em 2 lançamentos (probabilidade 50%), o restante termina em 3 (probabilidade 50%).
Exemplo prático: você e um amigo querem a última fatia de pizza. Lançamento único, você aceitaria o resultado, mas talvez resmungasse. Melhor de três parece mais justo porque não há como perder no primeiro lance dos dados. O resultado esperado é idêntico; a percepção de justiça é maior. Use o que seu grupo preferir — ambos são matematicamente válidos.
Ferramentas de aleatoriedade relacionadas
O Cara ou Coroa é o caso mais simples de "preciso de um resultado aleatório agora". Alguns Microapps relacionados para casos mais ricos:
- Rolador de Dados — para mais de dois resultados. Role qualquer número de dados com 2, 4, 6, 8, 10, 12, 20 ou 100 lados.
- Embaralhador de Lista — cole uma lista, receba-a de volta em ordem aleatória. Bom para embaralhar a ordem de apresentações, ordem de fila ou qualquer coisa que precise ser sequenciada de forma justa.
- Sorteador de Nomes — escolhe um item de uma lista. O caso de uso "escolher um vencedor".
- Gerador de Times — divide uma lista de pessoas em times aleatórios equilibrados. Útil para esportes, grupos de estudo ou dividir uma turma.
- Gerador de Senhas — usa a mesma fonte de aleatoriedade criptográfica para saída de grau de segurança real.
Perguntas frequentes
Este Cara ou Coroa é realmente 50/50?
Sim. Cada lançamento puxa um byte aleatório de crypto.getRandomValues() e verifica se é par ou ímpar. A função é o RNG criptograficamente seguro do navegador, o mesmo usado para gerar chaves de sessão TLS. Viés seria mensurável em milhões de lançamentos; você não vai encontrar nenhum.
Lancei cara 7 vezes seguidas. A moeda está quebrada?
Não. A probabilidade de qualquer sequência específica de 7 lançamentos (incluindo CCCCCCC) é 1/128 — cerca de 0,8%. Se você lança 100 vezes, provavelmente vai ver uma sequência desse tamanho em algum lugar da sequência. Sequências não significam que a moeda está tendenciosa; significam que a moeda está normal.
Por que meu total acumulado se afasta de 50/50?
Sequências aleatórias têm o que os estatísticos chamam de deriva de passeio aleatório. Depois de 100 lançamentos, a contagem geralmente não será 50/50 — estará em algum lugar nos 40 e 50 de cada lado. Depois de 10.000 lançamentos estará muito mais próxima em termos absolutos (digamos, 5.021 vs 4.979), mas a diferença absoluta ainda pode estar nas dezenas. A convergência é em razão, não na contagem absoluta. Esta é a lei dos grandes números, e ela é lenta.
Posso lançar uma moeda ponderada (60/40 ou 70/30)?
O Cara ou Coroa é apenas justo, por design. Para escolhas aleatórias ponderadas, use o Rolador de Dados com um dado maior e defina suas próprias faixas (por exemplo, role um d10; 1–6 significa opção A, 7–10 significa opção B é uma divisão 60/40). Construir "moeda ponderada" em um cara ou coroa turva o que a ferramenta faz. Um trabalho por Microapp.
O Cara ou Coroa funciona offline?
Sim, uma vez que a página carregue. O gerador de números aleatórios roda inteiramente no seu navegador; nada sobre o lançamento sai do seu dispositivo. Sem chamada de rede, sem servidor, sem rastreamento. Abra uma vez, desligue o wi-fi, continue lançando.
Posso usar isto para um chaveamento de torneio ou decisão importante?
A aleatoriedade é justa. Para decisões de alto risco onde o perdedor pode contestar o resultado, considere fazer o lançamento com uma testemunha olhando a tela, ou tire um print do resultado com data e hora visíveis. A moeda não mente, mas a prova social de que o lançamento aconteceu pode importar quando o resultado tem consequências.
Por que não usar simplesmente uma moeda física?
Use uma se tiver. Moedas físicas são ótimas para justiça, com uma pequena ressalva — pesquisas sugerem que moedas reais são levemente tendenciosas a cair do mesmo lado em que começaram (cerca de 51/49) por causa de como elas oscilam no ar. Este Cara ou Coroa não tem um "lado inicial", então é na verdade um pouquinho mais justo do que uma moeda física. Mas você não vai notar a diferença em 10 lançamentos.