【发布时间】:2023-01-09 06:02:49
【问题描述】:
我是 C++ 的初学者,我正在尝试编写一个可以执行所有 4 种基本数学运算的计算器。问题是,它一直默认为加法,事实上,我可以将任何东西放入你应该放置操作符号的地方,并且它会加法。
#include <iostream>
using namespace std;
int main()
{
string Operation;
float Number1{}, Number2{};
float Answer1, Answer2, Answer3, Answer4;
cout << "Calculator 1.0" << endl;
cout << "Enter Equation: ";
cin >> Number1 >> Operation >> Number2;
if (Operation == "Plus" or "plus" or "Add" or "add" or "+")
{
Answer1 = Number1 + Number2;
cout << Number1 << " + " << Number2 << " = " << Answer1;
}
else
{
if (Operation == "Minus" or "minus" or "-")
{
Answer2 = Number1 - Number2;
cout << Number1 << " - " << Number2 << " = " << Answer2;
}
else
{
if (Operation == "times" or "Times" or "*" or "x")
{
Answer3 = Number1 * Number2;
cout << Number1 << " x " << Number2 << " = " << Answer3;
}
else
{
if (Operation == "/")
{
Answer4 = Number1 / Number2;
cout << Number1 << " / " << Number2 << " = " << Answer4;
}
}
}
}
}
我试图将操作与第一个 if 语句分开并制作单独的操作,但所做的只是同时打印两者,就好像 if 语句不存在并且它只是执行所有代码而不管它说了什么.
【问题讨论】:
-
如果您不知道 C++ 中的正确语法,则需要查看教科书。任何猜测正确语法的尝试都将被证明是错误的。这不是您将变量与多个值进行匹配的方式。
-
提示:
if (x == y or z)并没有按照您的想法去做。它评估为(x==y) or (z) -
Operation == "Plus" or "plus" or "Add" or "add" or "+"- The Definitive C++ Book Guide and List
标签: c++ math calculator calculation