数学表达式逻辑表达式混合计算

对于表达式的计算主要有以下种思路
1、经典的后缀表达式计算(也称波兰算法)
2、各式各样抽象语法树实现
目前在网上比较多的是经典的后缀表达式计算,也有调用编译器或其它三方组件实现。
目前所见的用后缀表达式计算表达式,存在以下问题:
1、不支持负数
2、只支持加减乘除
3、对波兰算法的实现不正确或者说不完整
4、不支持逻辑运算
5、不支持自定义函数、过程
6、不支持(左、右括号)
总起来说,波兰算法是经典的,当然也存在局限性。
2、抽象语法树实现存在的问题
1、对实现者本人来说要求较高
2、如果用第三方的抽象语法树组件,受到限制不说,还要学习它的语法、词法
这里我再介绍一种递归下降算法,从本质上说它属于抽象语法树实现的范畴,但是它更简单更灵活当然也更不规范了:)
先看看我近两周做的一个demo截图吧

PEE2.JPG

支持数学表达式和逻辑表达式混合计算,支持括号,支持函数、逻辑过程的无限嵌套,支持常见的三角函数。。。等

转载于:https://www.cnblogs.com/floerggyy/archive/2005/12/02/289211.html

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值