| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 120
 121
 122
 123
 124
 125
 126
 127
 128
 129
 130
 131
 132
 133
 134
 135
 136
 137
 138
 139
 140
 141
 142
 143
 144
 145
 146
 147
 148
 149
 150
 151
 152
 153
 154
 
 | #include <stdio.h>
#include <iostream>
#include <string>
#include <vector>
using namespace std;
 
 
class joueur
{
private:	
	string nom;
	int nb_points;
	int etat_pendaison;
public:
	joueur(string name, int points, int etat);
	~joueur();
	string get_nom() const {return nom;}
	int get_etat_pandaison() const {return etat_pendaison;}
	int get_nb_points() const {return nb_points;}
	string set_nom(string name) {nom=name;}
	int set_etat_pandaison(int etat) {etat_pendaison=etat;}
	int set_nb_points(int points) {nb_points=points;}
};
 
joueur:: joueur(string name, int points, int etat)
{
	nom = name;
	nb_points = points;
	etat_pendaison = etat;
}
 
joueur::~joueur()
{
}
 
void proposition(string mot,int joueur_propose_mot,int nb_joueur,vector<joueur>& tab_joueur)
{
	//test pour savoir si le mot a été trouvé
	int gagne = 0;
	char lettre;
	int i = 0;
	//recupere les joueurs qui vont proposé des lettres 
	//string mot_a_lecran= new string;
	char* mot_a_lecran = new char;
	//char* mot_a_lecran = new char(mot.size()*2);
	//char mot_a_lecran[mot.size()*2];
	int num_joueur[nb_joueur];
	int longueur_mot = mot.size();
	//cpt du nombre lettre trouvé
	int cpt_long = 0;
	//initialisation du mot_a_lecran
	while(mot[i]!='\0')
	{
		mot_a_lecran[i]=(char)" -";
		i++;
	}
 
	//recuperation des joueurs qui vont proposer un mot
	int y=0;
	for(i=0;i<nb_joueur;i++)
	{
		if (i!=joueur_propose_mot)
		{
			num_joueur[y] = i;
			y++;
		}
 
	}
 
	while(gagne==0)
	{
		//voici les proposition de mots
		for(i=0;i<y;i++)
		{
			//sil le mot a deja été trouvé pas de proposition
			if (gagne == 0)
			{ 
				int numero_joueur_propose_lettre = num_joueur[i];
				if (tab_joueur[numero_joueur_propose_lettre].get_etat_pandaison()>0)
				{
					cout << "MOT : "<<mot_a_lecran<<endl;
					cout << "Joueur "<< tab_joueur[numero_joueur_propose_lettre].get_nom()<< " proposer une lettre"<<endl;
					cin >>lettre;
					int x = 0;
					bool trouve = false;
 
					while(mot[x]!='\0')
					{
						if (mot[x] == lettre)
						{
							mot_a_lecran[x] = lettre;
							trouve = true;
							cpt_long++;
						}
						x++;
					}
 
					//une lettre a été trouvé
					if (trouve == true)
					{
						cout << "Bravo: "<< mot_a_lecran<<endl; 
					}else
					{
						cout << "Pas de chance :" <<endl;
						tab_joueur[numero_joueur_propose_lettre].set_etat_pandaison(tab_joueur[numero_joueur_propose_lettre].get_etat_pandaison()-1);
						cout << "Il vous reste  	"<<tab_joueur[numero_joueur_propose_lettre].get_etat_pandaison()<<" coups avant d'etre pendu"<<endl;
 
					}
 
					//le mot a été trouvé
					if (longueur_mot == cpt_long)
					{
						cout << "-> Gagné" <<endl;
						gagne = 1;
						tab_joueur[numero_joueur_propose_lettre].set_nb_points(tab_joueur[numero_joueur_propose_lettre].get_nb_points()+2);
					}	
				}
			}
		}
 
	}
}
 
int main(int argv, char* argc[])
{
	int nb_joueur;
	string nom_joueur;
	//tableau d'objet joueur
	vector<joueur> tab_joueur;
	//joueur tab_joueur[nb_joueur];
	cout <<"indiquer le nombre de joueur"<<endl;
	cin >>nb_joueur;
 
	for(int i=0;i<nb_joueur;i++)
	{
		cout <<"nom du joueur "<<i+1<<endl;
		cin >> nom_joueur;
		tab_joueur.push_back(*(new joueur(nom_joueur,0,13)));
		//tab_joueur.push_back(new joueur(nom_joueur,0,13));
	}
 
	for(int i=0;i<nb_joueur;i++)
	{
		string mot;
		cout << "Au joueur "<<tab_joueur[i].get_nom() << " de proposer un mot"<<endl;
		cout << "les autres joueurs ne regardent pas"<<endl;
		cout <<"Entrer le mot :"<<endl;
		cin >> mot;
		//clear();
		proposition(mot,i,nb_joueur,tab_joueur);
	}
	exit(0);
	return 0;
} |