Mon "While" fausse le résultat de mon calcul
Résolu
JLesage
Messages postés
39
Statut
Membre
-
JLesage Messages postés 39 Statut Membre -
JLesage Messages postés 39 Statut Membre -
Bonjour! Je suis nouveau dans C++, j'essaie de faire une calculatrice, mais le résultat est faussé quand j'utilise une boucle "While" pour vérifier si l'utilisateur saisit le bon opérateur. Aidez-moi, s'il vous plait!
#include <iostream>
using namespace std;
int main()
{
double x, y;
double total = 0;
char op;
cout<<"Enter your first number: ";
cin>>x;
cout<<"Enter your second number: ";
cin>>y;
cout<<"Enter an operator: ";
cin>>op;
switch(op){
case '+':
total = x+y;
break;
case '-':
total = x-y;
break;
case '*':
total = x*y;
break;
}
while((op != '+') || (op != '-') || (op != '*')){
cout<<"Bad operator. Enter en operator: "<<endl;
cin>>choix;
}
cout<<"Total:"<<total<<endl;
return 0;
}
| EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI Merci d'y penser dans tes prochains messages. |
3 réponses
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonjour, je suggère, dans le message en ligne 33, d'afficher également l'opérateur. -
J'ai corrigé l'erreur. Il fallait mettre "&&" à la place des "| |" puis placer la boucle "While" avant le switch. J'avais fait une erreur aussi à la ligne 33 comme quelqu'un l'a mentionné; j'avais changé le nom des variables et j'avais oublié de la corriger à la ligne 33. Merci beaucoup les gars.
-