比赛 |
练习12 |
评测结果 |
AAAAA |
题目名称 |
计算器的改良 |
最终得分 |
100 |
用户昵称 |
Hyoi_ctime |
运行时间 |
0.000 s |
代码语言 |
C++ |
内存使用 |
0.31 MiB |
提交时间 |
2017-06-30 11:11:02 |
显示代码纯文本
#include<cstdio>
#include<algorithm>
#include<iostream>
#include<cmath>
#include<cstdlib>
#include<cstring>
using namespace std;
int tot,now1,now2,pp=0;
char s[5];
bool p=0;
int main()
{
freopen("computer.in","r",stdin);
freopen("computer.out","w",stdout);
int x=0,f=-1;
char ch;
while(1==1){
ch=getchar();
if(ch<'0'||ch>'9'){
if(ch!='+'&&ch!='-'&&ch!='=')
{
if(s[0]!=ch){
pp++;
if(pp==1){
s[0]=ch;
if(p==0)now1+=x*(-1)*f,f=-1,x=0;
else if(p==1) now1+=x*(-1)*f,f=1,x=0;
}
if(pp==2){
now2+=x*f;
break;
}
}
else if(s[0]==ch){
if(p==0)now1+=x*(-1)*f,f=-1,x=0;
else if(p==1) now1+=x*(-1)*f,f=1,x=0;
}
}
else if(ch=='-'){
now2+=x*f;
x=0;
f=f*(-1);
}
else if(ch=='='){
now2+=x*f;
x=0;
p=1;
f=1;
}
else if(ch=='+'){
now2+=x*f;
if(p==0) f=-1;
else f=1;
x=0;
}
}
else if(ch<='9'&&ch>='0'){
x=x*10+ch-'0';
}
if(pp==2) break;
}
printf("%c=%.3f",s[0],double(now2)/double(now1));
}