manuel trujillo

Generation

generate functionWed, 03 May 2023

Ecrire une fonction importer_mots qui prend en argument un nom de fichier nom_fichier et qui renvoie la liste des mots contenus dans ce fichier, en se limi- tant aux mots d’au moins trois lettres. Dans le fichier passé en argument, il y aura un mot par ligne, pas de caractères accentués, pas de cédille, pas de traits d’union. Les mots pourront être écrits en minuscules ou majuscules. Ecrire une autre fonction choisir_mot_alea qui renvoie un mot choisi aléatoirement dans une liste de mots passée en argument (pour cela, vous utiliserez la fonction randint du module random). La liste en argument est supposée non vide. Ecrire une autre fonction init_mot_part_decouv qui prend en argument le mot à devi- ner mot_myst (au moins 3 lettres) et un caractère car_subst, et qui renvoie la liste des lettres du mot mystère dans laquelle on a remplacé toutes les lettres sauf la première et la dernière par le caractère car_subst. L’argument car_subst est optionnel, sa valeur par défaut est "-". Ensuite pour indiquer au joueur l’avancement de la partie, nous allons afficher un message pour indiquer au joueur s’il s’approche du nombre limite d’erreurs à ne pas dépasser pour pouvoir gagner. Le message se dévoilera progressivement, au fur et à mesure que le nombre d’erreurs augmentera. Ainsi, au lieu de perdre quand le pendu est entièrement dessiné, on perdra quand le mot "PERDU" sera entièrement écrit. Comme ce mot ne contient que 5 lettres, et qu’on peut souhaiter autoriser davantage d’erreurs, on le complètera avec autant de points d’exclamation "!" que nécessaire plus un "!" final supplémentaire qui s’affiche toujours (pour mieux visualiser combien d’erreurs sont encore autorisées). La fonction afficher_potence_texte prendra en argument l’entier nb_err correspondant au nombre d’erreurs faites et l’entier nb_err_max correspondant au nombre d’erreurs à atteindre pour perdre la partie (on suppose que nb_err_max ≥ 5

def afficher_potence_texte(nb_err, nb_err_max): if nb_err >= nb_err_max: return "PERDU" + "!" * (nb_err_max + 1) else: return "PERDU" + "!" * nb_err + "." * (nb_err_max - nb_err - 1) + "!"

Questions about programming?Chat with your personal AI assistant