Correction du TP: Programme du jeu
Programme du pendu
void main(){
String tableMots[] = {"vivre", "mourir", "aujourdhui" , "demain", "merci","derien","salut"}; // liste
de mots
int var = ((int) Math.floor(Math.random() * (tableMots.length))); // ne rien changer, adapté à la taille
du tableau
//println (var);
String motadeviner = tableMots [var]; //choisir le mot au hasard
//println (motadeviner);
int longueur = motadeviner.length(); //calculer la longueur du mot
//println (longueur);
// initialisation
boolean[] ti = new boolean[longueur];
int co=0;
int vie=6;
while(vie > 0 ){
co=0;
String Motafiche = "mot: ";
for(;longueur!= co;){
if (ti[co]){
Motafiche = Motafiche +motadeviner.charAt(co)+" ";
}else{
Motafiche = Motafiche +"_ ";
}
co++;
}
println(Motafiche);
char lettre = readCharacter ("Entrez votre lettre :");
String rep = ("Vous avez tapé " +lettre);
println (rep);
//print (lettre);
co=0;
int ci=longueur;
while (co != longueur){
if (lettre == motadeviner.charAt(co)) {
ti[co]=true;
}
else{ci=ci-1;
}
co++;
}
if (ci==0){vie=vie-1;}
//println (vie);
/* le code qi aurais opti est le suivant
*
*
* print("texte "+vie+"texte(sans "S")");
* if(vie==1 || vie ==0){
* print("s");}
*
* soit on rajoute un S que si 1 ou 0
*/
if (vie >1 ){// petit probleme remplace par infereur avec <=
println ("Il vous reste "+vie+" vies"); //utilisation de variable est inutilmes le directement
dans le print()
}
else{
println("Il vous reste "+vie+" vie"); //meme commentaire et pourquoi deux variables
diferente
}
//il ne faut metre en condition que ce qui est diferent entre les deux.donc juste le "S"
boolean v= true;
co=0;
while(co!=longueur){
if (ti[co]==false){
v = false;
}
co++;
}
if (v){ vie=-1;}
}
if (vie == 0){
println ("LOOSE !! DESOLE, VOUS AVEZ PERDU !! ='(");
println ("Le mot à trouver était : "+motadeviner);}
if (vie == -1){
println ("WIN !! FELICITATIONS, VOUS AVEZ GAGNE !! =D");
println ("Le mot à trouver était bien : "+motadeviner);}
}