je suis un débutant en programmation et j'ai besoin d'aide pour la résolution d'un programme en C.
Je vous présente l'exercice :
"Un jeu, nommé le pendu, consiste à deviner un mot en un certain nombre d'essais. Pour informatiser ce jeu nous avons besoin d'un tableau contenant les mots à deviner. Voici la stratégie que nous avons adoptée.
Les mots à deviner sont situés dans trois tableaux correspondant à des catégories. Les catégories sont: sports (tableau sports), musique (tableau musique) et pays (tableau pays). Chaque tableau contiendra entre 10.
Le programme demande la catégorie désirée. On détermine aléatoirement l’indice du tableau à l'aide de la fonction rand(). Le programme affiche un nombre de traits correspondant aux nombres de lettres du mot.
Le joueur doit deviner le mot que l'ordinateur a choisi. Pour ce faire, le joueur précise une lettre de l'alphabet. Chaque occurrence de la lettre est affichée à son emplacement dans le mot si le joueur a deviné la lettre. Si la lettre ne fait pas partie du mot, le joueur commet une faute et un message l'informe du verdict. Un joueur peut commettre un maximum de 5 fautes par mot. À la cinquième faute, il perd la partie et se fait "pendre". Le joueur peut préciser le caractère "*" indiquant qu'il a deviné le mot. L'ordinateur l'invite ensuite à proposer un mot. S'il s'agit du bon mot, le joueur gagne. Par contre, s'il ne s'agit pas du bon mot, le joueur perd aussitôt la partie. Lorsque le joueur trouve le mot, c'est-à-dire qu'il a deviné toutes les lettres du mot sans commettre 5 fautes, un message de félicitations lui est adressé. Le jeu se poursuit tant que le joueur désire deviner un nouveau mot.
Une fois que le joueur ne désire plus deviner de mot (en tapant le ?), les statistiques suivantes sont affichées : le pourcentage de mots devinés par rapport au nombre de mots à deviner;
Pour les mots que le joueur a réussi à deviner:
le plus grand nombre d’essais utilisés pour deviner un mot; le plus petit nombre d’essais utilisés pour deviner un mot; le nombre moyen d’essais utilisés pour deviner les mots.
N.B. La longueur maximale d'un mot est de 25 caractères.
Un essai correspond à entrer une lettre pour deviner le mot. Les caractères * et ? ne sont pas comptés comme un essai. Une faute correspond à un essai dont la lettre n’est pas dans le mot.
La fonction rand(), du fichier d’en-tête <stdlib.h>, retourne un entier compris entre 0 et 32767.
La fonction rand() nécessite un appel unique à la fonction srand() qui correspond à introduire un germe dans le générateur de nombre pseudo-aléatoire. La fonction srand() sollicite l’horloge de l’ordinateur, il faut donc ajouter l’inclusion du fichier <time.h>. Voici un bref exemple d’utilisation obtenu de l’aide de Visual C++. "
Merci pour votre attention!
Partager