Problème de tirets pendu java
Résolu/Fermé
bapt44
-
31 mars 2015 à 09:08
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 - 31 mars 2015 à 20:31
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 - 31 mars 2015 à 20:31
A voir également:
- Problème de tirets pendu java
- Waptrick java football - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Jeux java football - Télécharger - Jeux vidéo
- Java jre - Télécharger - Langages
- Jeux java itel - Forum Mobile
1 réponse
KX
Messages postés
16733
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
31 janvier 2024
3 014
31 mars 2015 à 20:31
31 mars 2015 à 20:31
Bonjour,
"Voici les fichiers zippés"
Aucun intérêt de mettre ton code zippé, c'est particulièrement agaçant de devoir aller sur un autre site, obliger d'attendre pour récupérer un fichier, le dézipper et se rendre compte au final qu'il n'y a que deux petites classes de 70 lignes, ce qui se copie colle aisément sur le forum.
D'ailleurs les voilà :
Quant à ton problème c'est normal qu'il t'affiche toujours 14 tirets, vu que tous tes mots ont 14 caractères... Quelle idée de mettre des espaces à la fin de chaque mot ? Ça ne sert à rien, et ça provoque ton erreur. Donc enlèves les et le reste fonctionnera.
"Voici les fichiers zippés"
Aucun intérêt de mettre ton code zippé, c'est particulièrement agaçant de devoir aller sur un autre site, obliger d'attendre pour récupérer un fichier, le dézipper et se rendre compte au final qu'il n'y a que deux petites classes de 70 lignes, ce qui se copie colle aisément sur le forum.
D'ailleurs les voilà :
import java.util.Arrays; import java.util.HashSet; import java.util.Scanner; import java.util.Set; public class Hangman2 { public static void main(String[] args) { Scanner Input = new Scanner(System.in); String radmWord = String.copyValueOf (MOOC.motAuSort()); int radmNumber = (int) Math.ceil(Math.random() * radmWord); int counter = 10; char[] genRadmLetter = radmWord.toCharArray(); char[] genRadmLetter2 = radmWord.toCharArray(); for (int x = 0; x < genRadmLetter.length; x++) { genRadmLetter[x] = '-'; } Set<Character> guesses = new HashSet<Character>(); do { System.out.println("Entrez une lettre"); System.out.println(String.valueOf(genRadmLetter)); char guessedLetter = Input.next().charAt(0); if (guesses.contains(guessedLetter)) { System.out.println("Vous avez déjà utilisé cette lettre"); } else { guesses.add(guessedLetter); boolean found = false; for (int rw = 0; rw < genRadmLetter2.length; rw++) { if (genRadmLetter2[rw] == guessedLetter) { genRadmLetter[rw] = guessedLetter; found = true; } } if (!found) { System.out.println("Mauvaise lettre, merci de réessayer"); counter = counter - 1; System.out.println("Tentatives restantes: " + counter); } } boolean result = Arrays.equals(genRadmLetter, genRadmLetter2); if (result == true) { break; } if (counter == 0) { break; } } while (counter != 0); if (counter == 0) { System.out.println("Vous avez perdu le mot était: " + radmWord); } else { System.out.println("Bravo"); System.out.println("Il vous restait " + counter +" tentatives"); } } }
public class MOOC{ private static java.util.Scanner scan; private static String[] listeMots = {"MATERIAU ", "POLITIQUE ", "FAVORISER ", "EXTERIEUR ", "FINANCER ", "TRADITION ", "CONSULTER ", "POSSIBILITE ", "POURCENTAGE ", "FAVORABLE ", "ORDINATEUR ", "FONCTIONNER ", "EXPANSION ", "LOGICIEL ", "CONTINUE ", "LIQUIDATION ", "BOURSIER ", "RACHETER ", "ALIMENTAIRE ", "ALLEMANDE ", "INVESTISSEUR ", "OBLIGATOIRE ", "UTILISATION ", "IMMEUBLE ", "NECESSAIRE ", "AUGMENTER ", "BENEFICIER ", "TRAVAILLER ", "DIRECTIVE ", "GENERALE ", "CONSOLIDATION ", "CORRECTION ", "INTERVENTION ", "COMPETITIVITE ", "FONCTION ", "MINISTRE ", "PERMANENTE ", "NUMERIQUE ", "CROISSANCE ", "CONSTRUCTEUR ", "MANAGEMENT ", "EVIDEMMENT ", "INSTITUTION ", "MOUVEMENT ", "PUREMENT ", "NATIONAL ", "INITIATIVE ", "ENORMEMENT ", "RETROUVER ", "INVESTISSEUR ", "ACCUEILLIR ", "PERSPECTIVE ", "STRATEGIQUE ", "COMPARAISON ", "PREFERENCE ", "PRODUCTEUR ", "CHIMIQUE ", "RISQUER ", "TENDANCE ", "SPECIALISTE ", "ATTENTION ", "SPECIALISEE ", "FONCTIONNEMENT", "LARGEMENT ", "BEAUCOUP ", "GLOBALEMENT ", "RECUPERER ", "VIOLENCE ", "PREVENTION ", "CONSTATER ", "CONDUITE ", "CONSACRER ", "BENEFICE ", "ASSURANCE ", "ASSUREUR ", "JUSTIFIE ", "UNIVERSITE ", "FONDATION ", "RESPECTER ", "SPECIALISER ", "CONCLUSION ", "NOTATION "}; static{ scan=new java.util.Scanner(System.in); scan.useLocale(java.util.Locale.ENGLISH); } public static double readDouble(){ double res = scan.nextDouble(); scan.nextLine(); return res; } public static void pause(double n){ try{ Thread.sleep((long)(n* 1000)); }catch(InterruptedException ie){ throw new RuntimeException(); } } public static String readString(){ String res = scan.nextLine(); return res; } public static int readInt(){ int res = scan.nextInt(); scan.nextLine(); return res; } public static boolean readBoolean(){ boolean res = scan.nextBoolean(); scan.nextLine(); return res; } public static boolean isDigit(char c){ return Character.isDigit(c); } public static char readChar(){ char res = scan.nextLine().charAt(0); return res; } public static int auSort(int min, int max){ return (int) (Math.random()*(max-min+1)+min); } public static char[] motAuSort(){ return listeMots[(int) (Math.random()*(listeMots.length+1))].toCharArray(); } }
Quant à ton problème c'est normal qu'il t'affiche toujours 14 tirets, vu que tous tes mots ont 14 caractères... Quelle idée de mettre des espaces à la fin de chaque mot ? Ça ne sert à rien, et ça provoque ton erreur. Donc enlèves les et le reste fonctionnera.