ForHosting KIT · Outils pour développeurs

Vérifier un sudoku : conflits de lignes, colonnes et blocs

Un seul chiffre répété peut rendre une position de sudoku incorrecte bien avant que l’erreur soit visible.

● BetaGratuit · dans votre navigateur
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt

Ce vérificateur examine une grille standard remplie ou partielle et identifie chaque case occupée impliquée dans un conflit immédiat. Il contrôle séparément les lignes, les colonnes et les blocs 3x3, ignore les cases vides et renvoie des coordonnées stables avec la cause de chaque signalement. Il ne résout pas la grille et ne révèle aucune valeur manquante, ce qui convient à l’entraînement, à l’édition, à l’enseignement et à la validation automatisée.

Formatez la grille avant de la vérifier

Saisissez une grille de sudoku standard sous forme de neuf lignes de neuf cases. Les cases remplies doivent contenir les chiffres de 1 à 9. Représentez une case vide par un point ou un zéro : ces deux notations ont le même sens et ne participent pas à la recherche de doublons. Vous pouvez séparer les cases par des espaces, des virgules ou des barres verticales afin de faciliter la lecture. Les écritures compactes et espacées sont donc acceptées. Le vérificateur retire ces séparateurs, mais ne devine ni ne corrige aucun autre caractère. Cette règle distingue une saisie mal formée d’une grille correctement structurée qui enfreint les règles du sudoku. La requête renvoie une erreur si elle ne contient pas exactement neuf lignes, si une ligne n’a pas neuf cases après retrait des séparateurs ou si un caractère non admis apparaît. Les grilles partielles sont acceptées, qu’elles ne contiennent que les indices initiaux, une partie en cours ou un plateau presque terminé. Une grille entièrement vide est valide, car aucune case occupée ne peut entrer en conflit. L’outil évalue uniquement la position fournie, sans compléter ni modifier les valeurs.

Lisez le rapport de conflits case par case

Le résultat commence par la valeur booléenne <code>valid</code>. Elle vaut vrai lorsqu’aucune case occupée ne partage son chiffre avec une autre case de la même ligne, colonne ou du même bloc 3x3. Le compteur <code>filled_cells</code> indique le nombre d’entrées non vides examinées. Si la position est incorrecte, <code>conflict_cells</code> répertorie toutes les cases concernées avec leurs coordonnées de ligne et de colonne commençant à un, le chiffre présent et un ou plusieurs motifs. Chaque motif précise le type de règle, l’indice de l’unité et la valeur répétée. Une case peut avoir plusieurs motifs : un cinq répété peut enfreindre à la fois sa ligne et le bloc supérieur gauche, et les deux informations restent visibles. Ce détail permet à une interface de surligner directement chaque emplacement problématique. L’ordre est déterministe : les cases suivent l’ordre de lecture, puis les motifs suivent ligne, colonne et bloc. Les cases vides ne figurent jamais dans le rapport. Si un chiffre apparaît trois fois dans une unité, les trois cases sont signalées au lieu d’une paire choisie arbitrairement.

Comprenez ce que la validité permet de conclure

Cette vérification répond à une question précise : la position actuelle enfreint-elle immédiatement la règle d’unicité d’une ligne, d’une colonne ou d’un bloc ? Un résultat valide ne prouve pas que la grille est résoluble, qu’elle possède une solution unique ou que ses indices forment un bon problème. Certaines positions n’ont aucun doublon direct, mais restent impossibles à terminer parce que des choix antérieurs suppriment tous les candidats d’une autre case. Cette analyse exige un solveur ou un contrôle de faisabilité plus approfondi, que cette capacité n’effectue volontairement pas. Cette portée limitée est utile lorsque le retour doit montrer les erreurs sans dévoiler la réponse. Un outil pédagogique peut surligner les doublons, un éditeur peut contrôler les indices après chaque modification et un importateur peut rejeter les données endommagées avant un traitement plus coûteux. Le calcul parcourt au maximum 81 cases et n’utilise ni réseau, ni hasard, ni horloge, ni état externe. Une entrée identique produit donc toujours la même sortie structurée. Le navigateur exécute localement cette logique pure, tandis qu’un processus automatisé peut interroger l’API pour $0.002 par élément et conserver les coordonnées pour révision.

Contrôlez une partie en cours

Repérez les chiffres répétés dans une grille partielle sans demander à un solveur de révéler les valeurs manquantes.

Révisez les indices d’un sudoku

Validez une grille nouvellement saisie et surlignez chaque case impliquée dans une infraction immédiate.

Sécurisez un flux d’importation

Séparez les textes mal formés des grilles bien structurées mais conflictuelles avant leur traitement.

Puis-je vérifier un sudoku inachevé ?

Oui. Utilisez un point ou un zéro pour chaque case vide. Les cases vides sont ignorées lors de la recherche des doublons.

Une grille valide est-elle forcément résoluble ?

Non. Cela signifie seulement que les entrées actuelles ne se répètent pas dans une ligne, une colonne ou un bloc. La résolution et l’unicité ne sont pas prouvées.

Pourquoi une case peut-elle avoir plusieurs motifs de conflit ?

Une même entrée peut répéter un chiffre dans sa ligne, sa colonne et son bloc. Chaque règle enfreinte est signalée séparément.

Les coordonnées commencent-elles à zéro ?

Non. Les lignes, colonnes et indices d’unité commencent à 1 afin de correspondre à la description habituelle d’un sudoku.

Quel est le prix d’une vérification par API ?

Chaque élément traité par l’API coûte $0.002. Le vérificateur interactif du navigateur peut fonctionner localement gratuitement.

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.

POSThttps://api.kit.forhosting.com/hobby/game-sudoku-validity

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é.

curl -X POST https://api.kit.forhosting.com/hobby/game-sudoku-validity \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"grid":"53..7....\n6..195...\n.98....6.\n8...6...3\n4..8.3..1\n7...2...6\n.6....28.\n...419..5\n....8..79"}'
{
  "grid": "53..7....\n6..195...\n.98....6.\n8...6...3\n4..8.3..1\n7...2...6\n.6....28.\n...419..5\n....8..79"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "hobby.game_sudoku_validity",
  "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.

par requête$0.002

Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.

HTTPCodeSignification
401unauthorizedClé API absente ou invalide : vérifiez l’en-tête Authorization.
402insufficient_balanceSolde insuffisant : rechargez votre compte pour lancer cette tâche.
404unknown_typeType de tâche inconnu : vérifiez le champ type de votre requête.
429rate_limitedTrop de requêtes : ralentissez la cadence, puis réessayez.

Consulter la documentation complète du KIT →