[PDF] Jeu du pendu [ka07] - Exercice





Previous PDF Next PDF



Chapitre 7 Jeux de lettres

Pour toutes les questions ci-dessous utilisez le fichier dico.txt. Dans le jeu du pendu



MANUEL PEDAGOGIQUE

Le Pendu est un jeu dynamique et très intéressant pour les adultes. Le but est de trouver le mot en posant au maximum 11 questions fermées (réponse par OUI 



Jeux de vocabulaire autour des mots

Le pendu. Deviner un mot grâce à la constitution de ses lettres Trouver le mot le plus ... Devinettes / charades Trouver un mot à partir d'une devinette.



Jeu du pendu [ka07] - Exercice

qui trouve un mot (c.-`a-d. propose la derni`ere lettre `a trouver) gagne un point. A la fin de la partie gagne celui qui est encore en vie et a le plus de 



Untitled

Variante : trouver le plus de mots possible trouver le plus long mot Le pendu. (vocabulaire et orthographe). Le meneur du jeu choisit un mot et dessine ...



Jeu-du-pendu.pdf

lettres des mots de l'autre à les former



LE JEU DU PENDU

LE JEU DE L'ECHELLE (plus communément « jeu du pendu »). ? Objectif. Comprendre la construction du mot. L'animateur invite les enfants à prendre.



EXPRESSIONS IDIOMATIQUES ET EXPRESSIONS FIGÉES

mot à mot dans la démarche de construction de sens ou à trouver leur équivalent dans la De plus il est recommandé de consulter les sites suivants qui ...



Avec Orthodingo vous allez pouvoir jouer à 3 jeux faciles d

Parmi les 200 mots du jeu il n'y a aucun pluriel Le pendu – mode coopératif. (2 à 8 joueurs). But du jeu : Trouver le mot le plus vite possible.



Guide de 1ère utilisation du site CheckYourSmile

Le premier jeu le pendu consiste à proposer des lettres ou des mots jusqu'à On peut trouver plus d'informations sur le fonctionnement du dictionnaire.

Jeu du pendu [ka07] - Exercice

Karine Zampieri, Stephane Riviere, Beatrice Amerein-Soltner

UniscielalgoprogVersion 21 mai 2018

Table des matieres

1 Presentation du jeu

2

2 Algorithmique, Programmation

2

2.1 Classe Joueur

2

2.2 Classe Pendu

5

2.3 Classe Humain

1 0

2.4 Classe Machine

12

3 References generales

1 5 C++ - Jeu du pendu (Solution)Mots-ClesJeux de logique, Classes abstraites RequisClasses, Pointeurs, Heritage, Polymorphisme d'inclusion

FichiersPendaison

Diculte• • ◦(2 h)Objectif

Cet exercice realise une version orientee objet polymorphique du jeu du Pendu. 1

Unisciel algoprog { Jeu du pendu [ka07]2

1 Presentation du jeu

La version ocielle duse joue a plusieurs personnes. Vous supposerez ici que le jeu se joue a deux. L'un des joueurs commence par proposer un mot a deviner. Supposez que l'autre joueurs ne voit pas ce mot. Il n'en connait au depart que la longueur. Ce deuxieme joueur propose ensuite une lettre. Si cette lettre est presente dans le mot, toutes ses occurrences sont indiquees. Sinon, ce joueursur le chemin de la pendaison. Au bout d'un certain nombreNMAXetapes, il a perdu : il est. La partie se termine lorsque chacun des deux joueurs a propose a l'autre un mot a deviner. Chaque joueur qui parvient a en pendre un autre gagne un point. Chaque joueur qui trouve un mot (c.-a-d. propose la derniere lettre a trouver) gagne un point. A la n de la partie, gagne celui qui est encore en vie et a le plus de points. Au terme de la pendaison (NMAX-eme etape), le pendu pourrait ressembler a un petit pendu (ici 12 essais) :.______ _O_ I _ _____ e = 12 On peut choisir ici un achage totalement dierent. Le but n'etant pas de perdre de temps a essayer de faire un joli dessin (ce qui compte c'est que chaque joueur voit clairement a chaque tour de jeu a quel stade il en est), vous pouvez utiliser la classe PendaisonC1fournie en telechargement qui permet l'achage du pendu.Plusieurs joueurs Le jeu du pendu pouvant se jouer a plusieurs joueurs (un qui propose le mot et les autres essayant a tour de r^ole de le deviner), la solution proposee ne fait pas d'hypothese sur le nombre de joueurs.

2 Algorithmique, Programmation

2.1 Classe JoueurCreez une classe de baseJoueurrepresentant les joueurs.

Incluez :

•Le nom (cha^ne de caracteres) du joueur. •Le numero de l'etape (entier positif) atteinte par le joueur. •Le nombre de points (entier positif) gagne par le joueur.

Unisciel algoprog { Jeu du pendu [ka07]3

Ecrivez un constructeur a un parametre (le nom du joueur) initialisant les attributs. Ecrivez une methodeincrPointsqui incremente le nombre de points du joueur. Ecrivez une methodeincrEtapequi incremente le nombre d'etapes du joueur. Ecrivez une methode abstraiteproposerMotqui permet au joueur de proposer un mot (a faire deviner a l'autre). Ecrivez une methode abstraiteproposerLettrequi permet au joueur de proposer une lettre (lorsqu'il essaie de deviner un mot).Validez votre classe et vos methodes avec la solution.

Solution C++@[Joueur.hpp] @[Joueur.cpp]#ifndefJPJOUEUR_CLASS#defineJPJOUEUR_CLASS#include#includeusingnamespace std;/**

Represente

des joueurs au Jeu du Pendu super classe abstraite classJoueur{

public:Joueur(conststring&n );virtual~Joueur();conststring&getNom ()const;intgetPoints()const;intgetEtape()const;voidincrPoints();voidincrEtape();voidreset();//Permet au joueur de proposer un mot

virtualstringproposerMot ()const= 0;//Permet au joueur de proposer une lettre virtual char proposerLettre()const= 0;private:stringm_nom ;// nom du joueur intm_npoints;// # de points cumules intm_etape;// etape }; include"Joueur.cpp"#endif

Unisciel algoprog { Jeu du pendu [ka07]4/**

Constructeur

normal

Joueur

Joueur

(conststring&n ):m_nom (n),m_npoints (0),m_etape (0)

Destructeur

virtuel

Joueur

Joueur

Accesseur

le nom du joueur conststring&Joueur ::getNom()const{ returnm_nom;}

Accesseur

du nombre de points du joueur intJoueur::getPoints()const{ returnm_npoints;}

Accesseur

de l etape atteinte par le joueur intJoueur::getEtape()const{ returnm_etape;}

Modifieur

du nombre de points du joueur voidJoueur::incrPoints(){ m_npoints

Modifieur

du numero etape voidJoueur::incrEtape(){ m_etape

Reinitialise

le d etapes a zero avant de recommencer une partie voidJoueur::reset()

Unisciel algoprog { Jeu du pendu [ka07]5{

m_etape = 0;

2.2 Classe PenduCreez une classeJeuPendupermettant de jouer une partie de. Incluez parmi

ses attributs : •Le mot a-deviner (cha^ne de caracteres). •La tentative (cha^ne de caracteres) (c.-a-d. le mot tente) de l'adversaire. •Un vecteur de pointeurs surJoueur. Ecrivez un constructeur prenant en parametre un vecteur de pointeurs surJoueur. Ecrivez une methode interneinitADeviner(k)qui permet au joueur numerokde proposer un mot a deviner.Aide simple Ce mot sert a initialiser le mot a-deviner et est genere gr^ace a la methodeproposerMotde la classeJoueur. Ecrivez une methode interneinitTentativequi initialise la tentative avec des blancs sou- lignes ("_"). Exemple : Si a-deviner vaut, la tentative vaudra<____>. Ecrivez une methode interneestDansMot(c)|qui teste et renvoie \ lstinlineVraijsi une lettrec(caractere) se trouve dans le mot a-deviner. Ecrivez une methode interneinclureDansMot(c)qui remplace le blanc souligne correspon-

dant dans la tentative par la lettre qui se trouve dans le mot a-deviner.Soitla classePendaisonqui ache la pendaison d'ordren. Chaque ligne du tableau interne

correspond a l'achage devant se faire a l'etape d'une pendaison.

C++@[Pendaison.hpp]

Ecrivez une methode internedevinerMot(k)qui, etant donne l'indice du joueurkayant propose le mot a-deviner, permet a l'autre d'essayer de deviner le mot cache. La methode fait reessayer le joueur tant que le mot n'est pas devine ou qu'il n'a pas ete pendu. Unisciel algoprog { Jeu du pendu [ka07]6Aide simple Utilisez la methodeJoueur::proposerLettrepour permettre au joueur qui doit deviner le mot de proposer une lettre. A chaque etape, c'est soit le mot partiellement devine qui est ache (succes), soit la progression de la gure du pendu (echec). Pour realiser l'achage de la pendaison d'ordren|, appelez la methodePendaison::afficher(n). Ecrivez une methodejouerqui permet a chaque joueur de proposer a l'autre un mot a deviner.

Ecrivez une methodeafficherqui ache le resultat de la partie.Validez votre classe et vos methodes avec la solution.

Solution C++@[JeuPendu.hpp] @[JeuPendu.cpp]#ifndefJPPENDU_CLASS#defineJPPENDU_CLASS#include#include#include#includeusingnamespace std;#include"Pendaison.hpp"#include"Joueur.hpp"/**

Represente

des parties du jeu du pendu classJeuPendu{

public:JeuPendu(constvector&j );voidafficher()const;voidjouer();protected:boolestDansMot(charc)const;voidinclureDansMot(charc);voidinitADeviner(unsignedk);voidinitTentative();booldevinerMot(unsignedk);private:constvector &m_joueurs;stringm_adeviner ;// mot cache

string m_tentative mot tente include"JeuPendu.cpp"#endif

Constructeur

normal Unisciel algoprog { Jeu du pendu [ka07]7JeuPendu::JeuPendu(constvector&j ):m_joueurs (j)

Affiche

les resultats d une partie voidJeuPendu::afficher()const{ cout endl La partie est finie Les resultats endl for(unsignedj= 0; j < m_joueurs .size(); ++j){

Joueur

joueur m_joueurs j cout

Joueur

joueur getNom j +1)<<

Pendaison

estPendu joueur getEtape EN VIE PENDU points joueur getPoints endl cout endl

Boucle

principale d une partie voidJeuPendu::jouer(){

Reinitialise

les status des joueurs for(unsignedk= 0; k < m_joueurs .size(); ++k){ m_joueurs k reset Fait jouer chacun des joueurs tour de r le for(unsignedk= 0; k < m_joueurs .size(); ++k){

Initialise

le mot deviner par le joueur k initADeviner k

Initialise

la tentative initTentative Les joueurs autres que k sont sollicites pour proposer des lettres boolb= devinerMot (k);if(notb){ cout

ADeviner

etait m_adeviner endl Teste si un caract re est present dans le mot deviner Unisciel algoprog { Jeu du pendu [ka07]8ets "iln "apas dej àete propose boolJeuPendu::estDansMot(charc)const{ return(m_adeviner.find(c) !=string ::npos)and(m_tentative.find(c) ==string ::npos);}

Inclut

la lettre dans la tentative voidJeuPendu::inclureDansMot(charc){ for(unsignedj= 0; j < m_tentative .size(); ++j){ if(c== m_adeviner [j]){ m_tentative j c

Permet

au joueur d initialiser le mot deviner voidJeuPendu::initADeviner(unsignedk){ cout endl Au joueur m_joueurs k getNom k +1) de proposer un mot endl m_adeviner m_joueurs k proposerMot

Initialise

l attribut tentative avec des _ voidJeuPendu::initTentative(){ m_tentative string m_adeviner size _

Permet

aux joueurs a l exception du joueur k devant deviner le mot propose par le joueur k de faire leurs propositions a tour de role @return Vrai si le mot a ete devine Faux sinon ce qui permet d afficher ce qu il fallait trouver

STRATEGIE

Si la lettre proposee par un joueur est dans le mot la tentative est affichee en la completant avec la lettre aux endroits appropries Sinon l affichage du pendu progresse d une etape boolJeuPendu::devinerMot(unsignedk){

Tantqu

unquotesdbs_dbs11.pdfusesText_17
[PDF] mot tres dur pour pendu

[PDF] moteur asynchrone triphasé exercice avec solution pdf

[PDF] moteur courant continu cours si

[PDF] motion for compassionate release covid 19

[PDF] motion to strike federal court

[PDF] motor skills are associated with which part of the brain lobe

[PDF] mots croisés cm2 vocabulaire pdf

[PDF] mots meles cm2 pdf

[PDF] mots pour commencer une dissertation

[PDF] mount allison university excel training level 2 pdf

[PDF] mountain bike trails presidio

[PDF] mountain bike trails san francisco

[PDF] mountain lake trail map

[PDF] mouse alternatives

[PDF] mouse event handling in java applet