表达式求值(100分)

  • 主题发起人 主题发起人 笨笨杨
  • 开始时间 开始时间

笨笨杨

Unregistered / Unconfirmed
GUEST, unregistred user!
如何在用户输入一个表达式之后保存表达式的式子和计算结果
 
这个最好看编译原理或数据结构中的表达式求解,不太难。另外可下载一些支持表达
式计算的计算器控件。
 
There's a component named ExpressionEvaluator!
 
你要写编译器 :)
 
去找一个控件就可以了。
比如<a href="http://www.nease.net/~bozhi/down/exprev.zip">控件下载(有源代码</a>.....<a href="http://vcl.vclxx.com/DELPHI/D32FREE/EXPRESS.ZIP">或者是</a>
 
自己做程序识别呀不过太繁了找个控件试一试吧
 
这肯定是“数据结构”的作业,我在学校时就做过,让我找找。
 
如果是用在数据库中的话,你可以用SQL语句来实现。
另外我有几个可以解析数学公式的控件,你要的话我给你发过去
 
不明不白的问题
永远没错的控件
 
下载一些支持表达
式计算的计算器控件。
 
有控件为什么不用??????
有电灯难道不用用油灯???
Delphi的生命力在哪 ?????
 
你们谁又这方面的控件?我都想要一份(不好意思,太贪心了:-)
不过我在编程时要用到的,谢谢你们!!!
E_mail to:
thtfsyh@263.net

thank you!
 
to www:
>>有控件为什么不用??????
>> 有电灯难道不用用油灯???
坚决拥护。他们不用我用 ,老WWW
lymsir@yahoo.com.cn
 
很简单的问题也用控件。还不如去找一个现成的程序。
 
TuberC 2.0中有一个C码的例子.
支持变量,三角函数等
 
http://www.csdn.net
 
http://www.csdn.net 早就妇孺皆知了

 
如果能支持C,C++的表达式或者可以进行自由扩充就好了
 
哈哈,我曾经非常努力的做过一个,后来在32Bit深度历险上找到一个带源代码
的,立刻惭愧得一头栽倒在地,比起人家的代码,自己的真是!@#¥%...
后来再复杂的表达式求解我都用这个东西完成(好象不是构件,只是一段代码)。
一下是站点上的说明:
EXPREV.ZIP
是一个能够解析数学运算式,并且计算其值的构件,支持四则运算、
三角函数、指数对数、次方运算及使用者自定变量 ( 1.40 版,附源码 ),
作者 : BitSoft Development, L.L.C.。
另外还有:
EXPREVAL.ZIP
Expressions 单构件能够解析数学运算式的单元 ( 1.0.1 版,附源码) ,
作者:Production Robots Engineering Ltd。
FASTFRM.ZIP
TFastFormula 是一个能够解析数学运算式,并且计算其值的构件,此为共享软件
但可免费用於非商业用途( 1.0 版,无源码 Delphi 2.0/3.0 适用 ),作者:Frank Kroeger。
FEVAL.ZIP
TEval 是一个能够解析数学运算式的构件 ( 1.0 版,附源码 ),作者 : Giuseppe Stalteri。
PARSER91.ZIP
TParser 构件是於运行时刻解析、转换数学算式的构件,此版本修正了内存未回收的
Bug ( 9.1 版,附源码 ) ,作者 : Alin Flaider。
PARSER10.ZIP
TParser 构件能够解析、转换数学算式,运行时刻 ( Runtime ) 解析符式的速度
仅比编译时期解析慢 40% 到 80% ( 10.1 版,附源码 ) ,修改自 Alin Flaider
的版本,作者 : Stefan Hoffmeister。
PARSESRC.ZIP
TExprCalc 构件能够解析数学运算式并且计算其值,修改自 Ron Loewy 的 PARSE.DLL
( 附源码 ),作者 : Stuart Hedges。
XAEVAL.ZIP
是一个能够解析数学运算式的构件 ( 1.1 版,附源码 )。作者 : Lincoln Birnie。
Z_PARSER.ZIP
能够解析数学运算式的单元 ( 1.0 版,附源码 ),作者: Antonie Baars。
建议你看看
 
如果你同时使用数据库,可以用这样的办法。
假设表达式是 sin(1+3)+exp(10)可以用将
表达式字符串传入到数据库中:
select result=sin(1+3)+exp(10)
返回值就是结果,sql server等数据库系统
上支持的函数多多,够用了。
 
后退
顶部