L2-033 简单计算器
作者:
lvjj
,
2024-03-24 17:18:52
,
所有人可见
,
阅读 6
#include <bits/stdc++.h>
using namespace std;
int n;
stack<int> s1;
int ss1;
string ss2;
int a,b;
string c;
stack<string> s2;
string x;
int main(){
cin>>n;
for(int i=0;i<n;i++){
cin>>ss1;
s1.push(ss1);
}
for(int i=0;i<n-1;i++){
cin>>ss2;
s2.push(ss2);
}
while(!s2.empty()){
a=s1.top();
s1.pop();
b=s1.top();
s1.pop();
c=s2.top();
s2.pop();
if(c=="+")s1.push(b+a);
if(c=="-")s1.push(b-a);
if(c=="*")s1.push(b*a);
if(c=="/"&&a!=0)
{
s1.push(b/a);
}else if(c=="/"&&a==0){
cout<<"ERROR: "<<b<<'/'<<a;
x="win";//假如执行了error这一行输出,那么外面的cout就不用再输出
//x相当于一个信号,告诉外部是否cout输出
break;
}
}
string y="win";
if(y!=x) cout<<s1.top()<<endl;
return 0;
}