複製
Edit1 から 1 つの変数方程式を取得し、Edit2 "F(x)=4*X+2*log(x)+4*power(X,2)"
から X 値変数を取得して、結果 F(X) を Edit3 に表示する Delphi のプログラムが必要です。私を助けてください。
ありがとう。
Edit1 から 1 つの変数方程式を取得し、Edit2 "F(x)=4*X+2*log(x)+4*power(X,2)"
から X 値変数を取得して、結果 F(X) を Edit3 に表示する Delphi のプログラムが必要です。私を助けてください。
ありがとう。
おそらく、このコンポーネント - TbcParser を確認する必要があります。
http://www.bestcode.com/html/tbcparser.html
このコンポーネントにはソース コードが含まれています。
ファイルJclExprEval.pasに式エバリュエーターが付属しているJCLも確認できます。無料でオープンソースです。
見て
http://www.efg2.com/Lab/Library/Delphi/MathFunctions/Parsers.htm
また、JEDI や FastReport ライブラリがインストールされている場合は、それらのパーサーを使用できます。http://cc.embarcadero.com/item/15974のTParser10 を使用します。これは、最速ではないにしても、利用可能な最速の 1 つです。これはフリーウェアであり、D2007 まで問題なく動作します。D2009でも動くと聞きました。まだテストされていません。
独自の実装を作成し、すぐに使用できるライブラリを使用しない場合、これには時間がかかります。「式パーサー」を検索するだけです。トークナイザーから始めて、トークンから解析ツリーを構築します。
それはあなたの小数点記号に強く依存します。StrToFloat または新しいバージョンの Delphi - TryStrToFloat を使用します。