解析函数运算字符串方案征集,如:sin(MyDataBase.MyTable.IntField)*myfunc(cos(20*2+3),56)+23)

altaxa 2003-05-14 09:27:43
解析函数运算字符串方案征集,
如:sin(MyDataBase.MyTable.IntField)*myfunc(cos(20*2+3),56)+23)
其中,sin,cos,myfunc等是我定义的函数,共有几十个,此处之列句简单几个。他们的调用格式已知,MyDataBase是数据库名,MyTable是表名,IntField是字段名。+-*/=()这些符号的优先级已知。
请问用什么方法解析和计算这个表达式呢?
...全文
83 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
altaxa 2003-06-10
  • 打赏
  • 举报
回复
to fingster(天幕繁星)
C++的函数适配器?怎么用?能够详细说明
fingster 2003-06-04
  • 打赏
  • 举报
回复
用C++的函数适配器,怎么样?
altaxa 2003-06-04
  • 打赏
  • 举报
回复
Jupin(VxWorking) , HeadFile(HeadFile)
你们做过的东东能否发给我看看?多谢了。:)
saihuac@sohu.com
Jupin 2003-05-21
  • 打赏
  • 举报
回复
为每一个表达式生成一递归下降树,不断剪树叶子进行求解。
我写过一个编译原理课设原码,有这方面的代码。不过是CBuilder写的。
sevencat 2003-05-20
  • 打赏
  • 举报
回复
假如要求不高的话,
可以用树来解决。

基类:
class Iparsetree
{
int type;
virtual double cacl();
Iparsetree* bran1;
Iparsetree* bran2;
Iparsetree* bran3;
...
}
每个函数和操作符都定义一个树,
然后再用个scanner类来扫描并产生这些树
附:我水平有限,自己也没有实现过一个解释器。看的人家这么用的。
不过这样做效率也并不低

HeadFile 2003-05-20
  • 打赏
  • 举报
回复
找一个Flex++Bison++,自己做一个编译器都可以了。
不过这东西比较老了,我用它写过一个脚本语言的解释器。需要你些一个词法分析的文件,和语法分析的文件。就是学编译原理中的提到的Lex Yacc的C++。
altaxa 2003-05-14
  • 打赏
  • 举报
回复
sign!~~~~~csdn上好像没有什么高手啊
witcheese 2003-05-14
  • 打赏
  • 举报
回复
..
源码直接下载地址: https://pan.quark.cn/s/a4b39357ea24 ### 信号与系统(郑君里 第三版)课后习题解析 #### 1. 信号与系统中δ函数的尺度变换特性 在《信号与系统》(郑君里 第三版)这一著作中,作者阐述了δ函数的尺度变换特性,并借助一个特定的习题进行了详尽的阐释。该习题的任务在于验证以下等式: \[ \delta(at) = \frac{1}{|a|}\delta(t) \] **论证:** 为了验证此等式,我们首先需要掌握δ函数的基本属性以及它如何响应自变量的变动。依据题目的指示,我们知道当自变量为\( t \)时,脉冲的底部长度为\( \tau \),而当自变量转变为\( at \)时,底部长度调整为\( |a|\tau \)。 我们能够借助图形化的手段来获得直观的认识。设想一个用三角形来逼近的δ函数图像,其底边长度为\( \tau \),高度为\( h \),那么三角形的面积计算为\( A = \frac{1}{2} \tau h \)。当自变量变为\( at \)时,为了维持三角形的高度恒定,底边长度必须更新为\( |a|\tau \),此时三角形的面积变为\( A = \frac{1}{2} |a|\tau h = |a|A \)。 由于δ函数的积分特性被定义为单位面积,即在任何区间\( [-\infty, +\infty] \)内的积分结果均为1,因此无论底部长度如何变化,积分值均保持恒定。这表明,当自变量转变为\( at \)时,为了确保积分值维持在1,δ函数的幅度必须相应地调整为原值的\( \frac{1}{|a|} \)倍。由此,我们得以证明该等式: \[ \int_{-\infty}^{+\infty}...

24,851

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧