[程式設計題] 奇怪的表示式求值
阿新 • • 發佈:2019-01-01
常規的表示式求值,我們都會根據計算的優先順序來計算。比如/的優先順序就高於+-。但是小易所生活的世界的表示式規則很簡單,從左往右依次計算即可,而且小易所在的世界沒有除法,意味著表示式中沒有/,只有(+, - 和 )。現在給出一個表示式,需要你幫忙計算出小易所在的世界這個表示式的值為多少
輸入描述:
輸入為一行字串,即一個表示式。其中運算子只有-,+,*。參與計算的數字只有0~9.
保證表示式都是合法的,排列規則如樣例所示。
輸出描述:
輸出一個數,即表示式的值
輸入例子:
3+5*7
輸出例子:
56
水題
#include"iostream"
using namespace std;
int main()
{
string ai;
cin>>ai;
int sum=ai[0]-'0';
for(int i=1;i<ai.size();i+=2)
{
if(ai[i]=='+') sum+=ai[i+1]-'0';
if(ai[i]=='-') sum-=ai[i+1]-'0';
if(ai[i]=='*') sum*=ai[i+1]-'0';
}
cout<<sum<<endl;
return 0;
}