Programmation javascool HELP

Fermé
lilima95 Messages postés 12 Date d'inscription samedi 21 août 2010 Statut Membre Dernière intervention 30 mars 2013 - 30 mars 2013 à 10:40
Bonjour,
pour mon programme d'isn j'aimerai creer un jeu du pendu avec un joueur ayant 10 parties l'ordinateur choisis un mot au prealable dans une liste predefinie et ensuite le joueur choisi ses lettre il y a donc un tableau pour le mot mais la il y a plusieur s bug sur javascool que je nesaurais trouver alors avis à tous les specialistes et personnes ayant l'amabilité de m'aider s'il vou plait ! je vous explique en fait le programme tourne mais il n'affiche pas les lettres dans un tableau comme je voulais et me dis gagné alors que je rentre qu'une seule lettre ce n'est donc pas logique :/

void main(){
JOptionPane.showMessageDialog(getPane(), "Bienvenue ! \nBonne partie sur \"Le Pendu \" !" );

// On definit un pseudo pour chaque joueur.
String J1 = JOptionPane.showInputDialog(getPane(), "Rentrez votre pseudo",
"Joueur 1", JOptionPane.QUESTION_MESSAGE);

println("LE PENDU ");


// Champ lexical
String[] mots = {"algebre", "arithmetique","soleil"};
//choix aleatoire dans la liste
int n = random(0,3);
println(mots[n]);

String mot = readString();
// Creation d'un tableau
int juste[] = new int[mot.length()];
juste[0] = 1; juste[juste.length - 1] = 1;

// Boucle du jeu: Le joueur 1 dispose d'un nombre d'essais egal a deux fois la longueur du mot
for(int j = 0; j < 10; j++) {

// Test si le mot est correct
int gagne = 1;
for(int i = 0; i < mot.length(); i++)
if(juste[i] == 0) gagne = 0;
if(gagne == 1) {
JOptionPane.showMessageDialog(getPane(), "Bravo "+J1+", vous avez devine le mot !\nExecutez le programme a nouveau pour rejouer !");
return;
}
// Ecriture des lettres devinees

for(int i = 0; i < mot.length(); i++) {
if(juste[i] == 1) System.out.print(mot.charAt(i));
else System.out.print("_");
}
System.out.println();

// Le Joueur1 rentre une lettre.

String reponse = JOptionPane.showInputDialog(getPane(), J1+", veuillez entrer une lettre", JOptionPane.QUESTION_MESSAGE);
char c = reponse.charAt(0);

// On met a jour les lettres justes

for(int i = 0; i < mot.length(); i++)
if(mot.charAt(i) == c) juste[i] = 1;
}
JOptionPane.showMessageDialog(getPane(), "Dommage vous n'avez pas reussi a deviner le mot ");
}

A voir également: