bonjour, pouvez vous me dire pourquoi cela ne fonctionne pas ?
#include <string>
#include <iostream>
using namespace std;
string joueur();
string essaiJoueur();
bool testerCombinaison(string);
int main (){
string mot;
string solutionJoueur1[3];
string solutionJoueur2[3];
string essai[3];
bool gagne=false;
string combinaisonJoueur1;
string combinaisonJoueur2;
string combiJoueur1;
cout<<"Joueur 1"<<endl;
do {
combinaisonJoueur1=joueur(); //combinaison du joueur1
} while (testerCombinaison(combiJoueur1));
solutionJoueur1[3]= combinaisonJoueur1;//met la combinaison dans un tableau
system ("cls");
cout<<"Joueur 2"<<endl;
do {
combinaisonJoueur2=joueur(); //combinaison du joueur1
} while (testerCombinaison(combiJoueur1));
solutionJoueur2[3]= combinaisonJoueur2;//met la combinaison dans un tableau
cout<<"solution du joueur 1 "<<solutionJoueur1[3]<<endl;
cout<<"solution du joueur 2 "<<solutionJoueur2[3]<<endl;
system ("pause");
return 0;
}
string joueur(){
string combi;
cout<<"Veuillez choisir 4 couleurs parmis les suivantes"<<endl;
cout<<"(r=rouge,v=vert,b=bleu,j=jaune,n=noir,o=orange):"<<endl;
cin>>combi;
return (combi); //retourne la combinaison d'un joueur
}
string essaiJoueur(){
string essai;
cout<<"a vous de jouer ! saisissez a nouveau une combinaison pour trouver si celle-ci est celle de votre adversaire"<<endl;
cin>>essai;
return(essai); //retourne une combinaison pour la comparer
}
bool testerCombinaison(string combi){ // procédure de test de la validité de la combinaison
int longueurCombiJoueur=combi.length(); //donne la longueur de la combinaison
int i;
for (i=0; i<longueurCombiJoueur; i++){ //boucle pour extraire chaque caractère 1 à 1
string extrait= combi.substr(i,1);
if (extrait != "r" & extrait != "v" & extrait != "b"& extrait != "j" & extrait != "n"& extrait != "o"){ //compare chaque caractère pour vérifier la saisie
cout<<"erreur de saisie"<<endl;
return true; //retourn true si erreur
}
}return false; //retourn false si pas d'erreur
}