Bonjour !
Débutant en Java, je suis en train de créer un programme de "Jeu du bon nombre".
Seulement, mon problème (là où il y a le //PROBLEME), est que même si la variable "recommencer" est "oui" ou "non" ou "n" ou "o", la boucle continue et ne s'arrête pas alors qu'il est bien dit qu'elle devrait s'arréter si le bon mot est "oui" ou "non" ou "n" ou "o".
Voici mon code :
Merci de bien vouloir m'expliquer où est l'erreur parce que là je ne comprends pas :l
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 import java.util.Random; import java.util.Scanner; public class goodnumber { public static void main(String[] args) { System.out.println("Le jeu du bon nombre ! BingoNombre !\n"); Random r = new Random(); int valeur = 0 + r.nextInt(20 - 0); //Compris entre 0 et 20 int reponse=0; Scanner sc = new Scanner(System.in); Scanner sc2 = new Scanner(System.in); String recommencer; if(valeur>20) { System.out.println("Oula ! Erreur de creation du nombre random !"); }else{ System.out.println("Nombre genere !\n"); while(reponse != valeur) { System.out.println("Entrez le nombre !\n"); while( !sc.hasNextInt() ) { // verification du chiffre sil nest pas une lettre sc.nextLine(); System.out.println("Saisissez un nombre s'il vous plait !"); sc.nextLine(); } reponse=sc.nextInt(); if (reponse>valeur) { System.out.println("Le random est plus petit !"); }else if(reponse==valeur){ }else{ System.out.println("Le random est plus grand !"); } } System.out.println("\nFelicitation ! Le nombre random est bien : "+valeur+" !"); System.out.println("\nSouhaitez vous recommencer ?"); recommencer=sc2.nextLine(); while(recommencer!=("oui")||recommencer!=("non")||recommencer!=("o")||recommencer!=("n")) // PROBLEME { System.out.println("\nEntrez une valeur correcte s il vous plait (oui,non,o,n)"); recommencer=sc2.nextLine(); } if (recommencer.equals("oui")||recommencer.equals("o")) // string.equals() permet de mettre sous condition un String { System.out.println("Recommencons !"); }else if (recommencer.equals("non")||recommencer.equals("n")) { System.out.println("Merci d'avoir joue avec nous !"); }else{ System.out.println("Veuillez entrer une valeur correct ! Le jeu est termine."); } } } }
Cordialement ,
Partager