摘要: 经过整整一个上午的时间,总算将之前的自动机的操作运算加进了初等函数,主要包括一些三角函数(sin,cos,tan)和log,ln等,奇怪的是控制台下包含的math头文件里面竟然没有cot的操作函数囧,最终在 .Net下引入的命名空间System下的math类库也是一样,幸亏咱的数学功底还行,还知道cotx*tanx=1,最后实在要加cot函数操作咱就来个cotx=1/tanx,呵呵,猥琐猥琐...
在加入初等函数操作的同时还拓展了操作数的范围,之前是对非负实数的运算,现在可以到整个实数范围,即加入负数的操作。
这两项功能的拓展说到底其实就是加入单目运算符而已。在转后缀表达式的阶段扫描到这类运算符时立马将其压入栈内即可,与此同时后期在对后缀表达式进行运算时从栈内只弹出一个操作数进行所需要的运算即可。
阅读全文