求解基本四则字符串算术表达式
求解基本四则字符串算术表达式
一、解析字符算术表达式
一段正确的字符串表达式会包含以下几种形式的独立操作符
-
操作符:+(,-(,(,),+,-,*,/
-
操作符(数):1,1.1,-1,+1,1e1,1E1,1e-1,1e+1,1E-1,1E+1
可以将它们分为三类
A. +,-
B. 操作符(数)
C. 其余操作符
只有将字符串中存在的独立操作符正确的解析出来,才能做正确的计算.
解析思路如下:
A类操作符有两种含义
a. 符号数含义,出现该含义情况包含以下几种:
i. 其前面的字符为 e,E
ii. 其前面的字符为操作符(除)外)
b. 计算符含义,除去符号数含义即可
C类除去A类中的a种含义即可
B类除去C类和A类中的a种含义即可
二、计算字符算术表达式
计算分为以下几个阶段
1. 括号操作符阶段
a. 括号操作符内,仅存基本操作符
b. 有符号数的括号操作
c. 括号操作符外,若存基本操作符
2. 其余操作符阶段
a. 先前高优先操作符
i. 当前低优先级操作符
b. 先前低优先操作符
i. 同先前优先级操作符