比赛 |
练习12 |
评测结果 |
AAAAA |
题目名称 |
计算器的改良 |
最终得分 |
100 |
用户昵称 |
玉带林中挂 |
运行时间 |
0.000 s |
代码语言 |
C++ |
内存使用 |
0.31 MiB |
提交时间 |
2017-06-30 09:05:13 |
显示代码纯文本
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <iostream>
#include <cmath>
#include <algorithm>
using namespace std;
int main()
{
freopen("computer.in","r",stdin);
freopen("computer.out","w",stdout);
char s[1200];
scanf("%s",&s);
int l=strlen(s);
int i=0,t=0,k=0,x=0,y=0;
char c;
while (i<l)
{
if (s[i]=='=')
{
i++;
t=1;
}
if (s[i]=='-')
{
i++;
k=1;
}
if (s[i]=='+') i++;
int f=0;
while (s[i]>='0' && s[i]<='9')
f=f*10+s[i++]-'0';
if (s[i]>='a' && s[i]<='z')
{
c=s[i++];
if ( (k+t)%2 ==0 ) x+=f;
else x-=f;
k=0;
}
else
{
if ( (k+t)%2 ==0 ) y-=f;
else y+=f;
k=0;
}
}
double ans=y*1.000/x;
printf("%c=%.3lf\n",c,ans);
fclose(stdin);fclose(stdout);
return 0;
}