#E. 【第四期】E.计算器

    传统题 1000ms 1MiB

【第四期】E.计算器

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

这是孵化器一轮考核第四期的E题,旨在考查大家对栈的应用能力

该题的难度较高,建议完成其他题目后再尝试

周琦:你怎么敢上这道题的,我当年做了一整天多

lyt:最后一题当然应该上压轴啦~ 无所谓,会有小登出手的。

xwx:爽!我要看到血流成河呀

Description

给出若干行算式, 需要你写出程序以求出这些算式的答案.
参考函数
int atoi(const char *str)
double atof(const char *str)

Format

Input

第一行输入整数 N,表示接下来有N行算式

每个算式以数字或者'-'[负号]为开头,以'='[等于号]为倒数第二个字符,以'\n'[换行符]为结尾.

算式包含如下几个元素:
1.0-9[数字]
2.'+'[加号]
3.'-'[减号]
4.'x'[乘号]
5.'/'[除号]
6.'.'[小数点]
7.'('[前括号]
8.')'[后括号]

数据范围
前30%的测试点仅包含前三种元素;
中间50%包含前五种元素;
后20%包含所有元素;

Output

每个答案单独占一行,行末以'\n'为结尾.
对于可能存在的小数答案,规定统一输出小数点后 6位.
对于小数末位(第六位),我们采用四舍六入五成双的计数保留法.
对于小数的判断,只要通过保留法得到的小数部分都为0,那么我们就认为这是一个整数.
比如1.0000001和0.9999995,因为它的小数点后6位在四舍六入5成双之后小数点后6位都是0,那么我们就将它们视为整数1.

Samples

1
1+1=

2

1
-1.2x-1=

1.200000

Limitation

1s, 1024KiB for each test case.

孵化器一轮第四期考核

未认领
状态
已结束
题目
5
开始时间
2024-10-20 18:00
截止时间
2024-11-3 23:59
可延期
0 小时