Simulador de cara ou coroa
Dez lançamentos justos com a semente 42 dão sempre a mesma sequência, THTTHTHTTH: 4 caras e 6 coroas. Mude o número de lançamentos ou a semente para um novo experimento e compare a taxa de caras com um meio. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Lançamentos
- 10
- Semente
- 42
- Sequência de resultados
- THTTHTHTTH
- Caras
- 4
- Caudas
- 6
- Taxa de caras
- 0,4
Um simulador de moeda justa é o laboratório de Bernoulli mais simples: cada lançamento é independente, cara e coroa são igualmente prováveis e o único parâmetro que muda o experimento é quantas vezes você lança. Esta capacidade aceita um inteiro positivo de lançamentos e uma semente inteira, aciona um gerador mulberry32 e devolve a sequência ordenada de caras e coroas junto com as duas contagens. O mesmo par de entradas sempre produz a mesma sequência.
Onde um simulador de moeda com semente rende de verdade
Salas de aula e plataformas de tutoria usam um simulador de moeda para o estudante ver surgir uma sequência justa curta sem lançar moedas de plástico na carteira e depois comparar a taxa de caras observada com o teórico um meio. Quem projeta jogos e ferramentas de desempate esportivo precisa de um lançamento auditável: dada a semente publicada e a contagem, qualquer revisor posterior pode recomputar as caras e coroas exatas que decidiram uma saída ou um sorteio.
Quem desenvolve chama o mesmo contrato a partir de scripts para semear vetores de teste, impulsionar demos Monte Carlo que precisam coincidir com uma folha impressa ou satisfazer enunciados de desafios de programação que pedem uma sequência e não uma única probabilidade. A validação falha não consome saldo.
Casos de uso
Demonstrações de Bernoulli em sala
Peça que a turma envie uma contagem de lançamentos e uma semente compartilhada da classe e depois discuta a taxa de caras observada contra o modelo justo de um meio, sem moedas físicas.
Lançamentos auditáveis em jogos e concursos
Publique a semente e a contagem de uma saída, um sorteio ou um desempate para qualquer revisor posterior recomputar a sequência exata de caras e coroas.
Perguntas frequentes
Como simulo lançamentos de uma moeda justa?
As mesmas entradas sempre produzem a mesma fita.
O que acontece se a contagem de lançamentos não for um inteiro positivo?
Zero, negativos, frações, valores ausentes e contagens acima de dez mil são rejeitados e não são cobrados.
A moeda é justa e eu posso viciá-la?
A moeda é justa com p igual a um meio. Esta página não aceita um parâmetro de viés; para probabilidades binomiais de exatamente k caras use a ferramenta irmã de probabilidade.
Por que eu preciso de uma semente?
A semente torna a sequência reproduzível. Omita-a para usar o padrão de um, ou defina o próprio inteiro para duas máquinas, dois corretores ou uma auditoria posterior reconstruírem os mesmos lançamentos.
Posso usar o simulador para decidir um desempate ou um sorteio?
Sim. Divulgue a semente e o número de lançamentos usados, e qualquer pessoa poderá recalcular depois a sequência exata de caras e coroas que decidiu o pontapé inicial, a rifa ou o desempate.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/stat/coin-flipper \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"flips":10}'const res = await fetch("https://api.kit.forhosting.com/stat/coin-flipper", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"flips": 10
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/stat/coin-flipper",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"flips": 10
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/stat/coin-flipper", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"flips":10}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"flips":10}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/stat/coin-flipper", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"flips": 10
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "stat.coin_flipper",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
min_flips | 1 |
max_flips | 10000 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Uma contagem ausente, nula, negativa ou não inteira falha com invalid_input em vez de inventar um lançamento.
O que um simulador de moeda justa devolve de fato
Uma moeda justa tem duas faces com probabilidade um meio, e lançamentos independentes formam um processo de Bernoulli cuja única decisão de projeto é o número de ensaios. Um simulador de moeda, portanto, não calcula uma massa de probabilidade binomial: ele materializa uma sequência concreta de resultados para você ver a série de caras e coroas, contar sequências ou alimentar a lista em um gráfico posterior. A justiça está fixada em probabilidade um meio; esta página não é um laboratório de moeda viciada. Quando flips não é um inteiro positivo a tarefa falha em vez de inventar um lançamento, porque um experimento de comprimento zero ou fracionário não é um resultado de simulador que alguém possa avaliar. Este endpoint inicializa um gerador mulberry32 com a semente inteira que você envia, sorteia um número uniforme no intervalo unitário a cada lançamento e mapeia valores abaixo de um meio para cara (H) e o restante para coroa (T). O mapeamento é fixo, o gerador é fixo e o percurso sobre os lançamentos é sequencial, de modo que o par flips e seed descreve por completo o experimento. A resposta lista o array sequence, a cadeia compacta sequence_string, a contagem heads, a contagem tails e heads_rate para você conferir a lei dos grandes números com n modestos sem escrever um laço próprio. Entradas idênticas sempre produzem o mesmo JSON porque o caminho nunca consulta o relógio de parede nem a fonte aleatória do anfitrião.
Contrato de entrada, forma da resposta e erros
Exemplo: dez lançamentos com semente quarenta e dois sempre produzem a mesma fita de dez caracteres e as mesmas duas contagens. Envie por POST um corpo JSON com flips igual a um inteiro positivo de um a dez mil; os aliases n, count e times são aceitos quando os clientes reutilizam nomes antigos de formulário. A seed opcional é um inteiro finito que inicializa o gerador; o alias rng_seed aponta para o mesmo campo, e omitir seed usa o padrão documentado de um, de modo que uma contagem sozinha ainda produz uma fita estável. Cada campo pode chegar como número JSON ou como string numérica de dígitos; strings vazias, booleanos, objetos e não inteiros falham com invalid_input nomeando o campo. Zero, valores negativos e contagens acima do máximo publicado são rejeitados porque não são uma contagem de lançamentos inteira positiva dentro do orçamento do Worker. Essas falhas não são cobradas. Em caso de sucesso o corpo ecoa flips e seed, devolve sequence como um array de fichas H e T na ordem dos lançamentos, sequence_string como as mesmas faces concatenadas para copiar com facilidade, heads e tails como contagens inteiras que sempre somam flips, heads_rate como heads dividido por flips arredondado a doze casas decimais, p igual a um meio e fair igual a true para o código posterior ramificar sem farejar formas. Combine a resposta com seu próprio código de gráficos se precisar de um histograma de comprimentos de sequência; este endpoint só simula os lançamentos. Mantenha n modesto em widgets interativos, fixe goldens para as sementes que você publica e trate invalid_input como sinal de qualidade dos dados em vez de repetir uma contagem malformada.
Onde um simulador de moeda com semente rende de verdade
Geradores de preparação para provas precisam de um oráculo determinista que marque uma contagem errada como invalid_input em vez de devolver em silêncio uma lista vazia que um corretor defeituoso poderia tratar como sucesso. Como a implementação é parse pura de nível A, cada chamada bem-sucedida custa o preço-base publicado US$ 0,002 sem tokens de modelo e sem rede de saída. Mantenha as requisições dentro do teto de lançamentos publicado, fixe heads_rate arredondado nos testes e você obtém sequências de moeda justa reproduzíveis para lição de casa, plugins de LMS e workers de borda sem montar um serviço aleatório próprio.
Casos de integração
Fixtures de teste determinísticos
Gere uma fita H/T estável em testes unitários e folhas Monte Carlo para a integração contínua e os gabaritos impressos não divergirem entre máquinas.
Perguntas técnicas
Quanto custa o simulador de moeda?
A ferramenta do navegador é gratuita. Requisições API usam saldo pré-pago de KIT a US$ 0,002 por chamada bem-sucedida; entrada inválida não é cobrada.