Vous êtes sur la page 1sur 2

M1 ASE - Génie Logiciel 1

TP 1 - Manipulation des chaînes de caractères


Université de Lille, Département EEA

1 Présentation du projet
Le jeu du pendu est un jeu de lettres où le joueur doit deviner un mot caché. Pour cela il doit proposer des
lettres.
• Si la lettre est dans le mot alors toutes ses occurrences apparaissent dans le mot et le joueur peut en
proposer une autre.
• Si la lettre n’est pas dans le mot, le joueur perd un essai qui se traduit par l’apparition d’une partie
du pendu.
Le joueur à gagné s’il trouve toutes les lettres du mot en moins d’un certain nombre d’essais. S’il atteint le
nombre d’essais maximum, alors il a perdu.

2 Contraintes
Votre programme doit permettre de :

• Proposer un niveau de difficulté, fixé par le nombre d’essais de départ (de 7 à 11).
• Lire chaque lettre proposée par le joueur, la convertir en majuscule si besoin.
• Comparer la lettre proposée à chacune des lettres du mot à deviner.
• Si la lettre est présente, toute ses occurrences doivent être dévoilées.

• Si la lettre n’est pas dans le mot, vous devez décrémenter le nombre d’essai du joueur.
• Gérer le nombre d’essai et le nombre de lettres du mot découvertes afin d’annoncer au joueur sa victoire
ou sa défaite.

3 Fonctions utilisées
Vous utiliserez les fonctions suivantes:
• void init_mot_devine(char mot[], int taille);: Cette fonction doit remplir la chaîne
de caractères mot en fonction de la taille du mot secret et avec un caractère particulier (ex : *) pour
cacher les lettres non dévoilées.

1
• char demande_lettre();: Cette fonction va demander au joueur une lettre. Elle va vérifier que
le caractère est bien une lettre. Elle va vérifier que c’est une majuscule, sinon elle la convertit en
majuscule.
• int cherche_lettre(char mot_sec[], char mot[], char lettre, int taille);: Cette
fonction doit chercher la lettre proposée par le joueur dans le mot secret. Si elle est dans le mot secret
alors elle doit la dévoiler dans mot. Cette fonction retourne le nombre d’occurrences de la lettre dans
le mot.
• void nouveau_mot(char mot_sec[]);: Cette fonction va remplir la chaîne de caractères mot_sec
à partir d’une ligne aléatoire du fichier liste.txt. Cette fonction est déjà implémentée.

Il faudra partir du programme mis en annexe sur la page Moodle et obligatoirement respecter les proto-
types des fonctions à compléter.

Vous aimerez peut-être aussi