2017-11-12 11 views
-3
int main() 
{ 

    std::cout << " Here is my calculator!\n "; 
    int input; 
    std::cout << " What operation do you wish to use? Use +, -, x,/as signs!\n "; 
    std::cin >> input; 
    std::cin.ignore(); 
    if (input == "+") 
{ 
    int no1; 
    std::cout << " Okay, addition what is your first number? "; 
    std::cin >> no1; 
    std::cin.ignore(); 
    std::cout << " Okay, So your first number is " << no1 << "!\n"; 
    int no2; 
    std::cout << " So you're first number is " << no1 << " What do you wish you're second number to be? " << "!\n"; 
    std::cin >> no2; 
    std::cin.ignore(); 
    std::cout << " Okay so you're second number is " << no2 << "In the end the equation is " << no1 << "+" << no2 << "!\n"; 
    std::cout << " The answer to you're question is " << no1 << "+" << no2 << "=" << no2 + no1 << "!\n"; 
    std::cout << " Thank you for using my calculator, Bye!\n"; 

} 

ランナーは、if文に9行目に問題があると言います。どんな助けでも大歓迎です。事前にありがとうなぜコードは正しく実行されないのですか?

+1

正確なエラーを送信してください。それの広範な言い換えはあまり有用ではありません。 – Carcigenicate

+2

そして文字列とintを比較しようとしています。私はC++が許すとは思わない。文字列を使用する場合は、入力を文字列として取る必要があります。 – Carcigenicate

+0

'int input;'を 'char input;'に変更し、 'if(input ==" + ")'から 'if(input == '+')'に変更する必要があります。 – DimChtz

答えて

2

オンライン5の場合、入力はintと宣言されています。 9行目では、入力(整数)とstringを比較していますが、これは不可能です。 "+"'+'に変更すると、チェックが機能します。 入力をcharに変更し、条件をif (input == '+')に変更するとより良いでしょう(DimChtz)。

関連する問題