RÉPUBLIQUE TUNISIENNE |
Épreuve pratique d’informatique |
|
Durée : 1h |
Coefficient : 0.5 |
|
Sections : Maths, Sciences |
Date : 25 mai 2017 |
Important :
1) Une solution modulaire au problème est exigée. 2) Enregistrez au fur et à mesure votre programme dans le dossier Bac2017 situé à la racine C: en lui |
Le jeu du pendu est un jeu à deux qui consiste à trouver un mot en devinant les lettres qui le composent. Pour ce faire, un premier joueur propose un mot à deviner ensuite, on affiche au deuxième joueur le mot à deviner d’une manière masquée en faisant apparaitre la première et la dernière lettre du mot et en remplaçant chacune des lettres restantes par un tiret ("-").
Pour deviner le mot, le deuxième joueur annonce une lettre. Si cette lettre fait partie du mot à deviner, on la dévoile en l’affichant à la place du tiret correspondant dans le mot masqué et ceci autant de fois que cette lettre apparait dans le mot.
Le jeu continue jusqu’à dévoiler toutes les lettres masquées ou atteindre un nombre d’essai égal à la longueur du mot à deviner.
Pour cela, on donne l’algorithme du programme principal suivant :
0) Début Jeu
1) Répéter
Ecrire ("Saisir le mot à deviner :")
Lire (mot)
Jusqu’à (FN Verif (mot))
2) Efface_ecran ( )
3) masque←FN Masquer (mot)
4) PROC Deviner (mot, masque)
5) Fin Jeu
NB : Efface_ecran est une procédure prédéfinie qui permet d’effacer l’écran. Son équivalent en pascal est : CLRSCR;
Travail demandé :
a. Traduire l’algorithme Jeu en un programme Pascal et ajouter les déclarations nécessaires.
b. Développer le module Verif qui permet de vérifier si le mot proposé est composé uniquement par des lettres et ayant une longueur comprise entre 5 et 20.
c. Développer le module Masquer qui permet de générer le mot à deviner d’une manière masquée et ceci en dévoilant la lettre de début et celle de la fin et en remplaçant le reste des lettres par des tirets "-".
d. Développer le module Deviner qui affiche au deuxième joueur le mot masqué et lui demande de proposer une lettre puis dévoile ses occurrences dans le mot masqué sans faire de distinction entre lettre majuscule et lettre minuscule.
e. Apporter les modifications nécessaires au programme afin qu’il puisse donner au deuxième joueur la possibilité de :
- répéter l’action de deviner jusqu’à trouver le mot à deviner ou atteindre un nombre d’essai égal à la longueur de ce mot et afficher à chaque fois le nombre d’essais restants.
- afficher le message " Bravo, vous avez gagné" si le joueur 2 réussit à deviner le mot et le message "Désolé, vous avez perdu " s’il ne le devine pas après un nombre d’essais égal à la longueur de ce mot.
Exemple :
On suppose que le mot à deviner est Pascal:
Exécution 1 Exécution 2
|
Grille d’évaluation :
Questions |
Nombre de points |
a. Traduction de l’algorithme Jeu en Pascal + Ajout des déclarations nécessaires. b. Développement du module Verif. c. Développement du module Masquer. d. Développement du module Deviner. e. Modification du programme |
5 + 1
3 3 4 4 |