Incompréhension lors de l’exécution d'une boucle "while" [Résolu]

Messages postés
15
Date d'inscription
mercredi 27 février 2019
Statut
Membre
Dernière intervention
29 juillet 2019
-
Bonjour,

Je rencontre actuellement un problème lors de l'éxecution de mon code javascript.
Je m'explique il s'agit d'un code pour un jeu de "chiffre mystère" qui invite l'utilisateur a deviner un chiffre (basique)
Voici le code :
fancy


Or lors de l'éxecution, la boucle ne se répète pas lorsque le premier chiffre saisi est supérieur et que le suivant est inférieur.

Voici un screen de mon problème :


On voit que le programme ne nous demande pas de retaper un nouveau chiffre or dans TOUS les autres cas il n'y a aucun problème.

Voilà, j'éspère que quelqu'un pourra m'éclairer :-).

Merci.

Configuration: Windows / Chrome 75.0.3770.142
Afficher la suite 

3 réponses

Messages postés
13599
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
16 août 2019
373
0
Merci
Bonsoir,

Tes captures d’écran sont illisibles.
Pour poster un code, lisible il faut faire comme décrit là

https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Shinobi55
Messages postés
15
Date d'inscription
mercredi 27 février 2019
Statut
Membre
Dernière intervention
29 juillet 2019
-
Bonsoir,

Oui, je m'en doutais un peu mais je posterais le code demain car il se fait tard ..
Commenter la réponse de Whismeril
Messages postés
15
Date d'inscription
mercredi 27 février 2019
Statut
Membre
Dernière intervention
29 juillet 2019
0
Merci
Voici le code en question :
package test;

import java.util.Scanner;

public class test {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.print("Entrez un nombre et essayez de trouver le bon : ");
		int sc2 = sc.nextInt();
		int n = 128;
		while (sc2 > n) {
			System.out.println("C'est moins");
			System.out.print("Recommencez svp : ");
			sc2 = sc.nextInt();
		}
		if (sc2 == n) {
			System.out.print("Trouvé !");
			sc.nextInt();
		}
		while (sc2 < n) {
			System.out.println("C'est plus");
			System.out.println("Recommencez svp : ");
			sc2 = sc.nextInt();
		}
		}
		}	


Et l'erreur est la suivante :

Entrez un nombre et essayez de trouver le bon : 120
C'est plus
Recommencez svp : 130
Bonjour Shinobi55,

Essaye comme ceci :

package test;

import java.util.Scanner;

public class test {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.print("Entrez un nombre et essayez de trouver le bon : ");
		int sc2 = sc.nextInt();
		int n = 128;

		while (sc2!=n){
			if(sc2 > n){
				System.out.println("C'est moins");
				System.out.print("Recommencez svp : ");
			}
			if(sc2 < n){
				System.out.println("C'est plus");
				System.out.println("Recommencez svp : ");
			}
			sc2 = sc.nextInt();
		}
		if(sc2==n){
			System.out.print("Trouvé !");
		}
	}
}


Cdt.
Shinobi55
Messages postés
15
Date d'inscription
mercredi 27 février 2019
Statut
Membre
Dernière intervention
29 juillet 2019
-
Bonjour,

Effectivement, il est plus simple de procéder comme ceci, je vais modifier mon code, merci de votre réponse très rapide !

Cdt.
Ce que tu peux faire aussi, c'est générer un nombre aléatoire que le joueur doit trouver.

Random rand = new Random();
int max = 200;
int min = 1;
int n = rand.nextInt(max-min+1)+min;
Commenter la réponse de Shinobi55
Messages postés
13599
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
16 août 2019
373
0
Merci
Heu...
C’est pas du JavaScript ça?
Bonjour,

En effet, c'est du java.
Il s'est trompé.

Cdt.
Shinobi55
Messages postés
15
Date d'inscription
mercredi 27 février 2019
Statut
Membre
Dernière intervention
29 juillet 2019
-
Oui, je sais j'ai mis java de base mais ça a mis javascript :/

Cdt
Commenter la réponse de Whismeril