Le jeu du pendu consiste à trouver un mot en devinant quelles sont les lettres qui le composent en un minimum d'essais. L'implémentation du jeu en Python se déroulera de la manière suivante:
Version-console du jeu du pendu
Le programme s'organisera selon l'organigramme ci-dessous, lui-même implémenté à l'aide de différentes fonctions:
Dans la version fonctionnelle du jeu, les fonctions de base nécessaires au jeu seront implémentées dans un module séparé du programme principal et répondront aux critères suivants:
choisirMot(str nomFichier) --> str:nomFichier>.affichePendu(list PENDAISON, list lettresIncorrectes, list lettresCorrectes, str motSecret) --> None:PENDAISON>, l'énumération des lettres incorrectes déjà proposées situées dans la liste <lettresIncorrectes> et l'état de la recherche du <motSecret> à partir de la liste <lettresCorrectes> contenant les lettres de <motSecret> déjà trouvées.proposer(list dejapropose) --> str:dejapropose> des lettres déjà suggérées lors d'un précédent appel.rejouer() --> Bool:True ou False en fonction de la réponse transmise par le joueur.
Après avoir téléchargé le dossier basePendu.zip, testez le fichier jeuPendu.pyc situé dans le sous-répertoire versionCompilee puis effectuez chacun des points suivants en partant des fichiers modPendu.py et jeuPendu.py situés dans le sous-répertoire squelettesCode:
jeuPendu.py en vous basant sur les indications données dans le fichier et en utilisant les fonctions choisirMot, affichePendu, proposer et rejouer décrites ci-dessus. Testez votre programme en utilisant le fichier modPendu.pyc contenant la définition des fonctions nécessaires.choisirMot, affichePendu, proposer et rejouer situées dans le fichier modPendu.py en vous basant sur leur description ci-dessus ainsi que sur les indications données dans le fichier. Testez votre programme à l'aide du fichier jeuPendu.py précédemment complété.annexes/joueurs/ qui contiendra, sur chaque ligne, les scores acquis par le joueur lors de chacune de ses parties gagnantes;date:motTrouve@pointsAcquis,
date correspondra à la date (jour/mois/année) de la partie gagnante, motTrouve correspondra au mot découvert lors de ladite partie et pointsAcquis correspondra au nombre de points acquis lors de la partie.modPendu.py et utilisées dans le fichier jeuPendu.py afin de garantir un code lisible.
Dans la version orientée objet du jeu, les classes nécessaires au jeu seront implémentées dans un module séparé du programme principal et répondront aux critères suivants:
Classe Pendu:Constructeur:start_it() --> None:choisirMot() --> str:affichePendu() --> None:jouer() --> None:end_it() --> None:gestionPoints() --> None:Classe Joueur:Constructeur:creerSauvegarde() --> str:sauvegarder(motCherche, points) --> None:points>
réalisés lors de la recherche du <motCherche> au format date(31/3/2019):motCherche@points.
trierScores() --> list:(points, mot, date)
triée en fonction du nombre de points.
Traduisez le module de fonctions de la version fonctionelle précédente en implémentant les classes décrites ci-dessus. Votre module se basera sur le squelette téléchargeable ici et pourra être testé à l'aide du nouveau corps principal du programme téléchargeable ici.