Pile ou face avec graine
Un simulateur de pile ou face avec graine produit une suite comparable à des lancers équitables, tout en restant parfaitement reproductible.
Lancer gratuitement
Indiquez le nombre de lancers et une graine textuelle : vous recevrez chaque résultat ainsi que les totaux des deux faces. La même quantité et la même graine donnent toujours la même réponse. Cet outil convient aux jeux, démonstrations, tests automatisés, exercices pédagogiques et séances de débogage. Il ne dépend ni de l’heure, ni du hasard du navigateur, ni d’un service réseau, ni d’un état caché ; vous pouvez donc partager et vérifier les résultats ultérieurement.
Créez une suite reproductible
Les lancers ordinaires sont difficiles à répéter, alors que la reproductibilité facilite les tests de règles et le partage d’exemples. Saisissez flip_count sous forme d’entier compris entre 1 et 10,000, puis seed sous forme de texte. Le simulateur transforme la graine en état initial stable et avance une fois par lancer. La réponse conserve l’ordre complet. Les mêmes entrées redonnent la même liste et le même décompte. Modifier un seul caractère sélectionne une autre suite, et la casse compte. Une graine vide est également admise, mais une description est plus facile à reconnaître. La graine devient ainsi une recette compacte permettant de reconstruire l’expérience sans recopier tous les résultats.
Interprétez les résultats et le décompte
La sortie contient la graine, un tableau de résultats et un objet de décompte. Lisez le tableau de gauche à droite : premier lancer, deuxième lancer, puis les suivants. Chaque élément indique clairement pile ou face, sans code numérique caché. Le décompte fournit pile, face et total. Le total correspond toujours au nombre accepté, et la somme des deux faces lui est également égale. Ces relations permettent de contrôler une réponse enregistrée. Une simulation équitable ne garantit pas l’égalité sur une courte série ; obtenir trois fois pile en quatre lancers est normal. Utilisez le tableau lorsque l’ordre compte, et le décompte pour un pourcentage, un score ou une comparaison rapide.
Choisissez le hasard adapté
Ce simulateur privilégie la reproductibilité, pas le secret. Il convient aux prototypes de jeux, relectures déterministes, exemples de documentation, cours de probabilités, tests instantanés et opérations de débogage. Conservez les deux entrées pour reconstruire l’exécution. Ne l’utilisez pas pour les paris, clés cryptographiques, jetons de sécurité, tirages au sort ou situations exigeant un prochain résultat imprévisible. La graine est publique et l’algorithme est stable et inspectable, non cryptographiquement sûr. La limite de 10,000 lancers garde la réponse maniable ; répartissez une expérience plus grande entre plusieurs graines. Pour une probabilité théorique, choisissez plutôt un calculateur : cette capacité produit un essai concret et indique ce qui s’est passé.
Cas d’usage
Testez la logique d’un jeu
Injectez une suite stable de piles et faces dans vos tests afin de reproduire précisément une panne.
Partagez une expérience pédagogique
Donnez une graine et une quantité afin que toute la classe vérifie le même essai.
Créez des relectures déterministes
Stockez des entrées compactes et reconstruisez chaque décision fondée sur la pièce pendant le débogage.
Questions fréquentes
Combien coûte une simulation ?
Chaque requête API coûte $0.002. La version pour navigateur exécute localement le même algorithme pur.
La même graine rend-elle toujours les mêmes lancers ?
Oui. Si la graine et la quantité restent identiques, l’ordre et le décompte restent identiques.
Puis-je employer une graine vide ?
Oui. Une chaîne vide est valide et reproductible, même si une graine descriptive se partage plus facilement.
Pourquoi les deux faces ne sont-elles pas exactement à égalité ?
Une pièce équitable ne garantit pas l’équilibre sur un essai fini. Les courtes suites inégales sont normales.
Est-ce adapté à la sécurité ou aux paris ?
Non. Le générateur est déterministe et non cryptographique ; employez un hasard sûr et audité pour la sécurité, l’argent ou les prix.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/game/coin-flip-seeded \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"flip_count":12,"seed":"demo-2026"}'const res = await fetch("https://api.kit.forhosting.com/game/coin-flip-seeded", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"flip_count": 12,
"seed": "demo-2026"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/game/coin-flip-seeded",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"flip_count": 12,
"seed": "demo-2026"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/game/coin-flip-seeded", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"flip_count":12,"seed":"demo-2026"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"flip_count":12,"seed":"demo-2026"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/game/coin-flip-seeded", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"flip_count": 12,
"seed": "demo-2026"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "game.coin_flip_seeded",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
max_items | 10000 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |