我需要Delphi中的程序从Edit1获得一个变量方程,例如"F(x)=4*X+2*log(x)+4*power(X,2)"
,并从Edit2获取X值变量,然后在Edit3中显示结果F(X)。请帮帮我。
感谢。
答案 0 :(得分:4)
答案 1 :(得分:4)
您还可以查看文件JCL中的表达式评估程序附带的JclExprEval.pas。它是免费和开源的。
答案 2 :(得分:1)
看看
http://www.efg2.com/Lab/Library/Delphi/MathFunctions/Parsers.htm
此外,如果安装了JEDI和/或FastReport库,则可以使用其解析器。我们使用来自http://cc.embarcadero.com/item/15974的TParser10,如果不是 最快的话,它是最快的。它是免费软件,完美地工作到D2007。我听说它在D2009也有效。虽然没有测试过。
答案 3 :(得分:0)
如果您想编写自己的实现而不使用现成的库,这将花费您一些时间。只需搜索“公式解析器”。我将从一个tokenizer开始,然后从标记构建一个解析树。
答案 4 :(得分:-1)
强烈地在您的小数点分隔符上停止。使用StrToFloat或nephi版本的Delphi - TryStrToFloat。