mas*_*ker -1 c++ math calculation
这是我的计算器的代码:
#include <iostream>
using namespace std;
int main()
{
int fNumber, sNumber, sum;
string op;
cout << "You will be asked for two numbers and the operator to use on them.\nCurrently supported operators are:\n";
cout << " Addition: +\n Subtraction: -\n Multiplication: *\n Division: \\\n Modulo: %\n\n";
cout << "First Number: ";
cin >> fNumber;
cout << "\nSecond Number: ";
cin >> sNumber;
cout << "\nOperator: ";
cin >> op;
if(op == "+"){
int sum = fNumber + sNumber;
} else if(op == "x" || op == "*"){
int sum = fNumber * sNumber;
} else if(op == "/"){
int sum = fNumber / sNumber;
} else if(op == "-"){
int sum = fNumber - sNumber;
} else if(op == "%"){
int sum = fNumber % sNumber;
} else{
cout << "\nPlease use a correct Operator\n";
return 1;
}
cout << "\n" << fNumber << " " << op << " " << sNumber << " = " << sum << "\n";
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我完全不知道为什么,但出于某种原因,无论我给它什么数字或运算符,它返回"7208640"作为答案:
系统将要求您输入两个数字和运算符.
目前支持的运营商是:
增加:+
减法: -
乘法:*
事业部:
模数:%
第一个数字:6
第二个数字:2
接线员:/
6/2 = 7208640
进程返回0(0x0)执行时间:4.612 s按任意键继续.
if(op == "+"){
int sum = fNumber + sNumber;
Run Code Online (Sandbox Code Playgroud)
应该
if(op == "+"){
sum = fNumber + sNumber;
Run Code Online (Sandbox Code Playgroud)
int sum除了第一个以外,其他所有人都一样.您声明一个变量,而不是每次使用它.