Erreur boucle while/if
Résolu
slamie
Messages postés
1
Statut
Membre
-
Slamie -
Slamie -
Bonjour,
je rencontre un problème avec ma boucle while et la conditionnelle qui va avec :
J'ai ça comme code :
while (testReponse==false){
Terminal.ecrireString("Êtes-vous une femme : O/N ? ");
r=Terminal.lireString();
if (r==O || r==N){
testReponse=true;
}
else {
testReponse=false;
}
}
if (r==O){
Terminal.ecrireStringln("Bonjour Madame ");
}
else {
Terminal.ecrireStringln("Bonjour Monsieur ");
}
}
}
Quand je compile tout se passe bien mais à l'exécution je n'arrive pas à sortir de la boucle while, qui me demande sans cesse "si je suis une femme". J'ai bien initialisé les variables en String nul
J'aimerai comprendre pourquoi ça ne fonctionne pas et ce qui cloche.
Un petit coup de main ?
Merci
je rencontre un problème avec ma boucle while et la conditionnelle qui va avec :
J'ai ça comme code :
while (testReponse==false){
Terminal.ecrireString("Êtes-vous une femme : O/N ? ");
r=Terminal.lireString();
if (r==O || r==N){
testReponse=true;
}
else {
testReponse=false;
}
}
if (r==O){
Terminal.ecrireStringln("Bonjour Madame ");
}
else {
Terminal.ecrireStringln("Bonjour Monsieur ");
}
}
}
Quand je compile tout se passe bien mais à l'exécution je n'arrive pas à sortir de la boucle while, qui me demande sans cesse "si je suis une femme". J'ai bien initialisé les variables en String nul
J'aimerai comprendre pourquoi ça ne fonctionne pas et ce qui cloche.
Un petit coup de main ?
Merci
A voir également:
- Erreur boucle while/if
- Erreur t32 ✓ - Forum Livebox
- Erreur 0x80070643 - Accueil - Windows
- Iptv erreur de lecture - Forum TV & Vidéo
- Erreur 4201 france tv ✓ - Forum Réseaux sociaux
- Erreur 4101 france tv - Forum Lecteurs et supports vidéo
1 réponse
Salut,
1. Dans ta variable r= Terminal.lireString(), tu récupère donc une String !
Lorsque tu la compare dans ta condition tu ne peut pas utiliser "==" pour des String, tu dois utiliser :
En outre, tu demande si c'est une femme et dans ta condition, que l'on réponde "O" / Oui ou "N"/ Non, ton testReponse est True, ce qui est faux ;)
1. Dans ta variable r= Terminal.lireString(), tu récupère donc une String !
Lorsque tu la compare dans ta condition tu ne peut pas utiliser "==" pour des String, tu dois utiliser :
if ( r.equals ("O") { .... }
En outre, tu demande si c'est une femme et dans ta condition, que l'on réponde "O" / Oui ou "N"/ Non, ton testReponse est True, ce qui est faux ;)
Bonne journée