用c++解决这个问题:题目描述 小明不擅长计算,但是作业总是要做的。 小明只会加法和乘法,但是他的记号和计算方法和常规的不同。加法用 "" 表示,乘法用 "+" 表示,并且没有优先级,从左到右依次计算。具体可参考样例。 请你写个程序帮他完成作业。 输入 一行,一个长度不超过100的字符串,只包含 "0" 到 "9"、"+"、"" 字符,表示一个算式。 输出 一个整数,表示算式的答案。数据保证计算结果不超过 10000 。
时间: 2024-02-11 21:08:00 浏览: 134
好的,以下是使用 C++ 实现的代码:
```cpp
#include <iostream>
#include <string>
using namespace std;
int main()
{
string s;
cin >> s;
int res = 0;
int num = 0;
char op = '+';
for (char c : s) {
if (isdigit(c)) {
num = num * 10 + (c - '0');
} else {
if (op == '+') {
res += num;
} else {
res *= num;
}
num = 0;
op = c;
}
}
if (op == '+') {
res += num;
} else {
res *= num;
}
cout << res << endl;
return 0;
}
```
这个代码和 Python 的实现思路是一样的,区别在于使用了 C++ 的语法。比如,使用 `string` 来保存输入的字符串,使用 `cin` 来读取输入,使用 `cout` 来输出结果,等等。
阅读全文