Le jeu du Motus consiste à retrouver un mot de 7 lettres en 6 coups maximum.
L'objectif de ce projet est de créer un programme qui permet de jouer au Motus.
Cahier des charges
Votre programme choisit au hasard un mot de 7 lettres dans le dictionnaire en utilisant le contenu du fichier suivant : dictionnaire . Il affiche ensuite la première lettre du mot à deviner, suivi de six tirets. Il demande enfin à l'utilisateur de saisir un mot, puis affiche une réponse basée sur le mot saisi de la manière suivante :
- les lettres bien placées sont écrites en MAJUSCULE ;
- les lettres mal placées sont écrites en minuscules ;
- les autres sont remplacée par des caractères
.
. - lorsqu'on descend, on a un
\
.
Votre programme continue de demander des mots à l'utilisateur jusqu'à ce qu'il ait trouvé la réponse ou qu'il ait fait 6 essais. Il affiche alors la réponse, ainsi qu'un message indiquant si le joueur a gagné ou perdu.
Attention, votre programme devra bien gérer les cas suivants (à vous de choisir comment) :
- le mot à deviner comporte des accents ;
- le mot entré par l'utilisateur comporte des accents, des majuscules, des minuscules, des chiffres ou des caractères spéciaux ;
- l'utilisateur rentre un mot avec moins ou plus de 7 lettres.
Exemple d'exécution
Voici un exemple d'exécution de votre programme (le texte affiché par le programme est en bleu, tandis que le texte entré par l'utilisateur est en noir) :
Mot à devinier : B______ Tentative 1 : bouffie BOu.... Tentative 2 : Boisson BO...on Tentative 3 : boîteux BO...U. Tentative 4 : BONHEUR BON..UR Tentative 5 : bonjour BONJOUR Félicitations, vous avez trouvé en 5 tentatives !
Pour aller plus loin (palier 4)
Une fois que vous avez atteint le palier 3 des fonctionnalités, voici quelques idées pour aller plus loin et atteindre le palier 4 :
- Proposer des modes de jeux avec différents nombres de lettres et nombres de tentatives autorisées.
- Proposer un mode 2 joueurs dans lequel les deux joueurs s'affrontent pour trouver un mot. À vous de définir les règles du jeu, mais vous aurez besoin de définir des limites de temps pour les joueurs.