LLetterRook
Espace de développement avec IA

Indices de lettres avec doublons

Notez une proposition ASCII de cinq minuscules avec 2 pour une position exacte, 1 pour une lettre déplacée et 0 pour une absence.

● ● ●LetterRook●
Méthodes de travail · Indices de lettres avec doublons ×
from collections import Counter

def letter_feedback(answer, guess):
    if any(type(s) is not str or len(s) != 5 or any(not "a" <= c <= "z" for c in s) for s in (answer, guess)):
        raise ValueError("word.lowercase")
    marks, remaining = [0] * 5, Counter()
    for i, (a, g) in enumerate(zip(answer, guess)):
        if a == g:
            marks[i] = 2
        else:
            remaining[a] += 1
    for i, g in enumerate(guess):
        if marks[i] != 2 and remaining[g]:
            marks[i] = 1
            remaining[g] -= 1
    return marks
✳Notez une proposition ASCII de cinq minuscules avec 2 pour une position exacte, 1 pour une lettre déplacée et 0 pour une absence.
✓ ModificationsVérifiez avant d’appliquer ↗
Illustration de l’espace de travail
  1. Modèles

    Configurez un endpoint compatible OpenAI ou Anthropic avec son URL de base et une clé API si nécessaire. Testez la connexion. Un serveur local doit fonctionner ; les outils distants peuvent transmettre des données séparément.

  2. Projet

    Testez les répétitions après réservation des correspondances exactes, en rejetant les majuscules, le non-ASCII et les mauvaises longueurs.

  3. Vérifiez avant d’appliquer

    Comparez le comportement observé au résultat attendu. Si une vérification échoue, cherchez la cause avant de poursuivre les modifications.

Méthodes de travail

Indices de lettres avec doublons

Méthodes de travail ↗
Méthodes de travail
from collections import Counter

def letter_feedback(answer, guess):
    if any(type(s) is not str or len(s) != 5 or any(not "a" <= c <= "z" for c in s) for s in (answer, guess)):
        raise ValueError("word.lowercase")
    marks, remaining = [0] * 5, Counter()
    for i, (a, g) in enumerate(zip(answer, guess)):
        if a == g:
            marks[i] = 2
        else:
            remaining[a] += 1
    for i, g in enumerate(guess):
        if marks[i] != 2 and remaining[g]:
            marks[i] = 1
            remaining[g] -= 1
    return marks
Espace de développement avec IA

Transformez une règle de jeu en modification de code testable

LetterRook propose un espace de programmation pour Windows qui précise le comportement logiciel d’une règle de jeu informelle. Ouvrez le projet et donnez au modèle connecté un exemple de tour avec les indications attendues. Demandez-lui d’examiner le code actuel d’évaluation et son appelant avant de proposer une modification, surtout si le problème signalé dépend de symboles répétés.

L’évaluation d’un mot de cinq lettres constitue un exemple de tâche utile. Une proposition peut contenir plus d’occurrences d’une lettre que la réponse ; expliquez donc comment les correspondances exactes affectent les indications restantes avant de demander un correctif. Vérifiez le résultat proposé sur des paires de mots concrètes, pas seulement sur le texte de l’assistant. Les règles doivent déterminer l’implémentation et toute explication affichée par l’application.

Après avoir examiné les modifications, exécutez des jeux d’essai couvrant les correspondances exactes, les lettres répétées et les formes de mots rejetées. Vérifiez que l’interface interprète les indications renvoyées conformément au contrat d’évaluation. LetterRook se connecte à des points de terminaison compatibles OpenAI ou Anthropic pris en charge, avec des identifiants si nécessaire. Choisissez un modèle sans filtrage si votre point de terminaison en propose un ; le serveur détermine toujours le contexte et les outils pris en charge. Conserver un tour explicite et son résultat attendu dans la conversation facilite l’évaluation de chaque modification suggérée sans se fier à une affirmation générale selon laquelle le jeu fonctionne désormais.

Des exemples de mots aux indications fiables

Que doit contenir un rapport de bogue utile sur les lettres répétées ?

Fournissez la réponse, la proposition, les indications obtenues et attendues pour chaque position. Incluez un cas où les correspondances exactes consomment certaines lettres disponibles. L’assistant dispose ainsi d’un écart précis à suivre dans l’implémentation de l’évaluation.

Pourquoi examiner les correspondances exactes avant les lettres mal placées ?

La règle illustrée réserve les correspondances exactes avant de répartir les occurrences restantes. Un correctif qui compte indépendamment chaque caractère correspondant peut attribuer trop de correspondances à une proposition répétitive. Vérifiez la séquence dans le code et conservez des exemples révélant cette erreur.

La fonction d’évaluation doit-elle accepter les majuscules ?

L’exemple existant accepte cinq lettres ASCII minuscules. Si l’application nécessite une normalisation, définissez où elle intervient et testez séparément cette frontière. Ne laissez pas une correction de l’évaluation introduire silencieusement d’autres formes d’entrée acceptées.

Que doit ajouter le test de l’interface aux jeux d’essai d’évaluation ?

Confirmez que chaque marque renvoyée correspond à l’indication visible et à la position voulues. Des nombres internes corrects peuvent encore être mal présentés. Exécutez cette vérification avec les jeux d’essai centrés sur les règles après avoir examiné les modifications pertinentes du code.

Télécharger pour Windows ↗

LetterRook · Mis à jour 2026-10-25