A71697. 简单算术题
编程题
基础
知识点
题目描述
给定一道没有括号的四则混合运算算术题(可能包含多余的空格),请编程计算出结果。运算规则如下:
- 既有乘、除法又有加、减法的,要先算乘除法,再算加减法;
- 同级运算时,要从左往右按顺序计算;
- 所有除法运算的结果都只保留整数部分(直接舍弃小数部分)。
例如:当算术题为 \tt{2 + 3*4 - 10/6 + 1/2*4} 时:
- 优先计算乘除法,有 \tt{3*4=12},\tt{10/6=1},\tt{1/2*4=0};
- 然后计算加减法,\tt{2+3*4-10/6+1/2*4} = \tt{2+12-1+0} = \tt{13},故输出 13。
输入格式
输入一个字符串,表示算术题:
- 字符串长度 5 \leq 长度 \leq 100000;
- 字符串中只包含数字字符以及 \tt{+},\tt{-},\tt{*},\tt{/} 运算符;
- 不含括号,可能包含空格;
- 算式中的运算数范围:1 \leq 运算数 \leq 200。
输出格式
输出一个整数,表示算术题的计算结果。题目数据保证算式的每一步运算的结果都在 -2 \times 10^9 \sim 2 \times 10^9 之间。
输入输出样例
输入 #1
2+3*4-10/6+1/2*4
输出 #1
13