Une bête erreur dans un bête script ....
Résolu/Fermé
BotroxJrs
Messages postés
3
Date d'inscription
lundi 3 septembre 2018
Statut
Membre
Dernière intervention
19 septembre 2018
-
3 sept. 2018 à 23:20
BotroxJrs Messages postés 3 Date d'inscription lundi 3 septembre 2018 Statut Membre Dernière intervention 19 septembre 2018 - 19 sept. 2018 à 17:13
BotroxJrs Messages postés 3 Date d'inscription lundi 3 septembre 2018 Statut Membre Dernière intervention 19 septembre 2018 - 19 sept. 2018 à 17:13
A voir également:
- Une bête erreur dans un bête script ....
- Erreur 0x80070643 - Guide
- Pense bete - Guide
- Script vidéo youtube - Guide
- Iptv erreur de lecture - Forum TV & Vidéo
- Bete d'orage dans ecran ✓ - Forum Matériel & Système
2 réponses
KX
Messages postés
16733
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
31 janvier 2024
3 014
4 sept. 2018 à 08:28
4 sept. 2018 à 08:28
Bonjour,
Le problème c'est la combinaison
Deux manière de résoudre le problème :
Personnellement je préfère la deuxième solution, mais la première permet de mieux comprendre le problème.
Remarque : c'est une particularité qui ne concerne que le clavier, mais la classe Scanner est plus générale que ça.
Le problème c'est la combinaison
sc.nextInt()et
sc.nextLine()car quand tu travailles avec le clavier, tu tapes ton nombre avec
sc.nextInt()et après tu appuies sur Entrée qui est consommée par le
sc.nextLine()suivant...
Deux manière de résoudre le problème :
- Après chaque
sc.nextInt()
tu rajoute unsc.nextLine()
qui récupère la touche Entrée. - Tu remplaces tes
sc.nextInt()
par unInteger.parseInt(sc.nextLine())
qui convertit la ligne en entier.
Personnellement je préfère la deuxième solution, mais la première permet de mieux comprendre le problème.
Remarque : c'est une particularité qui ne concerne que le clavier, mais la classe Scanner est plus générale que ça.
tarek_dotzero
Messages postés
817
Date d'inscription
jeudi 19 juillet 2007
Statut
Membre
Dernière intervention
12 avril 2022
120
Modifié le 15 sept. 2018 à 00:40
Modifié le 15 sept. 2018 à 00:40
Pour le deuxième problème, c'est la vérification de l'égalité pour les chaînes de caractères (String). Pour vérifier qu'une chaîne est différentes d'une autre, l'opérateur != ne fonctionne plus, il faut faire appel à la fonction equals de la classe String, alors au lieu d'avoir :
Vous devez mettre :
while(yes != "oui")
Vous devez mettre :
while(!yes.equals("oui"))
BotroxJrs
Messages postés
3
Date d'inscription
lundi 3 septembre 2018
Statut
Membre
Dernière intervention
19 septembre 2018
19 sept. 2018 à 17:13
19 sept. 2018 à 17:13
Effectivement ca fonctionne mieux comme ca , merci beaucoup .
19 sept. 2018 à 17:12