Bonsoir les programmeurs!

Etudiant en 1ere année de BTS IRIS, je dois faire un petit projet.
Mon choix c'est porté sur le jeux du pendu en C++.

Mais je rencontre un problème :
- quand l'utilisateur rentre une lettre bonne : OK.
- quand l'utilisateur rentre une lettre déjà tapé : OK.
- quand l'utilisateur rentre une lettre mauvaise : Problème.

Lorsque l'utilisateur rentre une lettre mauvaise, mon programme ne réagit pas!

Voici le code source :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
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
 
 
#include <iostream>
#include <string>
#include <cstdlib>
 
using namespace std;
 
 
int main()
{
 
cout << "\t\t__________________________________________" << endl;
cout << "\t\t|:::::::::    Jeu du pendu      :::::::::|" << endl;
cout << "\t\t__________________________________________" << endl;
cout << "\t\t      Bienvenue dans le jeu du pendu      " << endl;
 
 
string pseudo;
char motMystere[] = "helloworld";
char motATrouver[] = "------------";
char lettreSaisie;
int nombreEssais = 7;
int i;
 
cout << endl;
cout << "Saisissez votre pseudo :" << endl;
cin >> pseudo;
system("clear");
// cout << "Appuyez sur une enter pour commencer la partie!" << endl; // en traitement.
 
 
   while (nombreEssais > 0)
   {
 
bool lettreSaisieBool, lettreDejaTape = false;
 
	cout << endl << "Veuillez saisir une lettre : " << endl;
	cin >> lettreSaisie;
 
// Boucle de test permettant de définir si  la lettre a déja était saisie.
	for (i = 0 ; i < 10 ; i++) 
		{
			if (lettreSaisie == motATrouver[i])
			{
				lettreDejaTape = true; // lettre déjà tapé.
				nombreEssais--;
 
				if (nombreEssais == 0)
				{
					cout << "Perdu ! le mot secret étais : HELLOWORLD " << endl;
				}
				else
				{
					cout << "Vous avez déja fait apparaitre cette lettre dans le mot ! Plus que " << nombreEssais << " essais !" << endl;
				}
			}
		}
 
// Lettre pas encore saisie auparavant.
  	if (lettreDejaTape == false) 
  	{
			for (i = 0; i < 10; i++)
			{
 
				if (lettreSaisie == motMystere[i]) // si lettre saisie = une des lettres du mot mystere
				{
					lettreSaisieBool = true; // lettre bonne
					motATrouver[i] = lettreSaisie; // on remplace la/les lettres dans le tableau du mot à trouver.
					cout << "Cette lettre est bien dans le mot mystère!" << endl;
				}	
        		}
	}
 
// Lettre n'apparait pas dans le mot. 
  	if (lettreSaisieBool = false)
  	{
		nombreEssais--;
 
		if (nombreEssais == 0) 
		{
			cout << "Perdu ! le mot secret était : HELLOWORLD!" << endl;
		}
		else
		{
			cout << "Raté ! cette lettre n'apparait pas dans le mot ! Plus que " << nombreEssais << " essais !" << endl;
		}
	}
 
				for (i = 0 ; i < 10 ; i++) // on affiche les lettres bonnes dans le tableau motATrouver.
				{
					cout << motATrouver[i] << " ";
				}		
 
} // fin du while
 
 
 
} // fin du main
Merci d'avance.

Cordialement.