**杭电oj 1237**
#include
#include
#include
#include
#include
#include
using namespace std;
int main()
{double a;stack c;stack b;while(~scanf("%lf",&a)){double i;char d,e;double a1,a2,b1;e=getchar();if(a==0&&e=='\n'&&b.size()==0){while(c.empty()!=true){c.pop();}while(b.empty()!=true){b.pop();}break;}else if(e=='\n'){if(b.size()&&b.top()=='-'){a=a*-1;c.push(a);}elsec.push(a);if(b.size()&&b.top()=='*'){i=c.top();c.pop();i=i*c.top();c.pop();c.push(i);b.pop();}else if(b.size()&&b.top()=='/'){i=c.top();c.pop();i=c.top()/i;c.pop();c.push(i);b.pop();}while(b.size()){a1=c.top();c.pop();a2=c.top();c.pop();a1+=a2;c.push(a1);b.pop();} printf("%.2lf\n",c.top());continue;}d=getchar();if(b.size()&&b.top()=='-'){a=a*-1;c.push(a);}elsec.push(a);if(b.size()&&b.top()=='*'){i=c.top();c.pop();i=i*c.top();c.pop();c.push(i);b.pop();}else if(b.size()&&b.top()=='/'){i=c.top();c.pop();i=c.top()/i;c.pop();c.push(i);b.pop();}b.push(d);getchar(); }return 0;
}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!