昨天突然想写个计算器,支持无限位数结果的。于是乎就写了个...现在把写的过程记录下来,供大家互相学习!
首先,要做计算,我首先想到的就是逆波兰。
百度查到的定义是
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
我的理解是:
把表达式看作符号和数字组成的字符串
如果是数字,就放到一个容器里,如果是符号则放到另一个容器里,然后根据逆波兰的规则,把符号容器里的符号依次提到存数字字符串的容器中,这样就能转换
比如:
(a+b)*c-(a+b)/e
1 存数字的容器:
1 存运算符的容器:(
2 存数字的容器:a
2 存
3 存数字的容器:a
3 存运算符的容器:(+
4 存数字的容器:ab
4 存