PRoblem Link:http://139.129.36.234/problem.php?id=1205
1 + 24 + 2 * 5 - 7 / 110样例输出
3.0013.36提示
来源
2006年浙江大学计算机及软件工程研究生机试真题
编程思想:直接算术模拟。
AC code:
#include<iostream>#include<algorithm>#include<stdio.h>#include<map>#include<math.h>#include<string.h>#include<queue>#include<map>#include<stack>#include<vector>#include<set>#define LL long long#define exp 1e-9#define MAXN 1000010using namespace std;double data[222];double num;char op,c;int main(){// freopen("D://in.txt","r",stdin); int i,len; double res; while(scanf("%lf",&num)!=EOF && num) { len=0; data[len++]=num; c=getchar(); if(c=='/n') { printf("%.2lf/n",num); } else { while(1) { scanf("%c %lf",&op,&num); switch(op) { case '+':data[len++]=num;break; case '-':data[len++]=-num;break; case '*':data[len-1]*=num;break; case '/':data[len-1]/=num;break; } c=getchar(); if(c=='/n') break; } res=0; for(i=0;i<len;i++) { res+=data[i]; } printf("%.2lf/n",res); } } return 0;}
新闻热点
疑难解答