Probleme avec boucle while avec un char
meli:0
Messages postés
1
Statut
Membre
-
KX Messages postés 19031 Statut Modérateur -
KX Messages postés 19031 Statut Modérateur -
Bonjour,
j'ai un problème avec une boucle while. J'essaie de faire une boucle pour valider une reponse. Cependant je suis debutante et je ne comprend pas pourqui ce que j'ai fait ne fonctionne pas. Je me suis dit que c'etait peut etre a cause que le signe different de s'utilise differement avec un char mais je n'ai rien trouver sur internet. La premiere boucle est repeter sans arret meme si je met f ou F ou t ou T et j'ai essayer d'enlever cette boucle et le meme probleme m'arrive lorsque je suis a lautre boucle != avec le char choix ... SVP je suis extremement débutante donc des explication claire avec des mots clairs seraient appréciés Merci :)
while ( reponse != 'f' || reponse != 'F' || reponse != 't' || reponse != 'T' ){
System.out.println ( "Veuillez entrer un choix valide" );
System.out.println ( "Voulez-vous mettre fin au programme ou traiter une" +
" facture (Saisir f pour fermer ou t pour continuer)" );
reponse = Clavier.lireCharLn ();
}
while ( reponse == 't' || reponse == 'T' ){
while ( choix != 'O' || choix != 'o' || choix != 'n' || choix != 'N' ){
System.out.println ( "Veuillez entrer un choix valide" );
System.out.println ( "Voulez-vous entrer des informations sur d'autres" +
"vetements (Saisir o pour oui / n pour non)" );
choix = Clavier.lireCharLn ();
}
while ( choix == 'O' || choix == 'o' ){
System.out.println ( "CATEGORIES DE VETEMENTS" );
System.out.println ( "1- Pantalons" );
j'ai un problème avec une boucle while. J'essaie de faire une boucle pour valider une reponse. Cependant je suis debutante et je ne comprend pas pourqui ce que j'ai fait ne fonctionne pas. Je me suis dit que c'etait peut etre a cause que le signe different de s'utilise differement avec un char mais je n'ai rien trouver sur internet. La premiere boucle est repeter sans arret meme si je met f ou F ou t ou T et j'ai essayer d'enlever cette boucle et le meme probleme m'arrive lorsque je suis a lautre boucle != avec le char choix ... SVP je suis extremement débutante donc des explication claire avec des mots clairs seraient appréciés Merci :)
while ( reponse != 'f' || reponse != 'F' || reponse != 't' || reponse != 'T' ){
System.out.println ( "Veuillez entrer un choix valide" );
System.out.println ( "Voulez-vous mettre fin au programme ou traiter une" +
" facture (Saisir f pour fermer ou t pour continuer)" );
reponse = Clavier.lireCharLn ();
}
while ( reponse == 't' || reponse == 'T' ){
while ( choix != 'O' || choix != 'o' || choix != 'n' || choix != 'N' ){
System.out.println ( "Veuillez entrer un choix valide" );
System.out.println ( "Voulez-vous entrer des informations sur d'autres" +
"vetements (Saisir o pour oui / n pour non)" );
choix = Clavier.lireCharLn ();
}
while ( choix == 'O' || choix == 'o' ){
System.out.println ( "CATEGORIES DE VETEMENTS" );
System.out.println ( "1- Pantalons" );
A voir également:
- Probleme avec boucle while avec un char
- Boucle excel sans macro - Forum Excel
- Mon pc s'allume et s'éteint en boucle ✓ - Forum Matériel & Système
- Smart tv qui s'allume et s'éteint en boucle - Forum Téléviseurs
- Xiaomi s'éteint tout seul et se rallume en boucle - Forum Xiaomi
- Mise à disposition de boucle locale dédiée ✓ - Forum Freebox
1 réponse
C'est un problème de logique, tes conditions sont toujours vraies :
Par exemple si la réponse est 'f' alors
Ce qu'il te faut ce ne sont pas des OU logiques, mais des ET logique.
reponse != 'f' || reponse != 'F' || reponse != 't' || reponse != 'T' choix != 'O' || choix != 'o' || choix != 'n' || choix != 'N'
Par exemple si la réponse est 'f' alors
reponse != 'f'sera faux, mais
reponse != 'F'sera vrai, et inversement si la réponse est 'F' alors
reponse != 'F'sera faux, mais
reponse != 'f'sera vrai. Donc dans tous les cas
reponse != 'f' || reponse != 'F'sera vrai à cause du
||.
Ce qu'il te faut ce ne sont pas des OU logiques, mais des ET logique.
reponse != 'f' && reponse != 'F' && reponse != 't' && reponse != 'T' choix != 'O' && choix != 'o' && choix != 'n' && choix != 'N'