2012-07-29 3 views
-5

Ok, je suis un Noob C++ complet (j'ai seulement commencé à apprendre hier) et j'essaye d'écrire un programme simple de calculatrice. Je l'ai écrit dans le bloc-notes, mais quand j'ai essayé de le compiler, le cmd a produit tellement d'erreurs que c'était drôle. Quelqu'un peut-il me dire ce que je fais mal?Le programme C++ a produit beaucoup d'erreurs

Voici mon code:

#include <iostream> 
#include <string> 
using namespace std; 




int main() 
{ 
double num1; 
double num2; 
string operator; 
double num3; 

cout<<"Enter your first number"<<endl; 
cin<<num1; 
cout<<"Enter the operator"<<endl; 
cin<<operator; 
cout<<"Enter the next number"<<endl; 
cin<<num2; 

if(operator=="/"&&num2==0) 
{ 
cout<<"You are attempting to divide by 0. This is impossible and causes the destruction of the universe. However, the answer is infinity"<<endl; 
} 


if(operator=="+") 
{ 
num3 = num1+num2; 
} 
else if(operator=="-") 
{ 
num3 = num1-num2; 
} 
else if(operator=="*"||operator=="x"||operator=="X") 
{ 
num3 = num1*num2; 
} 
else 
{ 
num3 = num1/num2; 
} 
return 0; 
} 
+4

Quelles sont les erreurs de compilation que vous obtenez? Avez-vous demandé tous les avertissements et les informations de débogage? –

+6

'operator' est un mot réservé en C++. – LaLeX

+1

La prochaine fois s'il vous plaît liste le texte intégral de at _least_ la première erreur. Si vous utilisez Visual Studio, le texte intégral est dans la fenêtre "Sortie"; La fenêtre "erreur" n'a que des résumés. –

Répondre

2

operator est un mot-clé - utilisez plutôt op pour votre nom de variable.

Vous souhaitez entrer l'opérateur >> avec cin, et non l'opérateur <<.

3

erreur principale est que operator est un mot-clé en C++, vous ne pouvez pas l'utiliser comme nom de variable. Essayez de le renommer en op ou autre. Les compilateurs sont souvent confus, il suffit de se concentrer sur les premières erreurs, de les corriger et de les recompiler.

+0

Oups ... thanx les gars – imulsion

1

Il est probable que cette ligne:

string operator; 

operator est un mot-clé C++. Essayez de le changer pour un autre nom, comme userOp.

0

Pour lire à partir d'un flux, vous avez besoin de >>, donc c'est cin >> num1;

0

A. Quelles sont les erreurs?
B. Comme un conseil pour un noob (comme vous vous appelez) lorsque vous écrivez un nouveau code, essayez de le compiler après chaque partie que vous écrivez, cela vous aidera à comprendre quel morceau de code a causé l'erreur.

Questions connexes