1

こんにちは、プロジェクトの一環として、Java で正規表現を使用した算術式の評価に取り組んでいます。

式は次のようになります: 2+3/4(5+7)

最初にこれを次のように変更します: 2+3/4*(5+7)

それをpostfixに変換します

接尾辞: 23457+*/+

私が採用した手順は、Reg-Ex を使用してすべてのトークン (つまり、Integers、Operators、Open Paren、Close Paren) を解析し、それらの出現位置の i 番目の位置で並べ替えることです。その後、そのトークンの配列を後置式に変換し、その式を解決しました。この時点まで、すべてが正常に機能しています。

今、微分、積分、または二次方程式を解くためにそれを拡張したいと思います。

foe ex: 式 x^2+2*x+2 を微分または積分する

http://integrals.wolfram.com/index.jspと同様

出来ますか?今のところ、それを進める方法がわからないからですか?

4

2 に答える 2

1

ほとんどの積分計算エンジンは、amitが言ったように数値アプローチを使用していると思いますが、それをシンボリックに計算する方法はありますが、アルゴリズムよりもヒューリスティックであり、パターンマッチングによって行われます。Mathematicaはこのアプローチに従っていると思います。

于 2012-08-17T03:55:08.840 に答える
1

私が知っているほとんどの電卓 -数値解析を使用して方程式/微分および積分を計算します。これにより、正確な (解析的な) 解に近い解を見つけることができます。場合によっては、解けない方程式についてさえも見つけることができます (これが、解けない正規密度関数の標準正規表を取得した方法です) 。

たとえば、積分を解く -ガウス求積法は非常に一般的で効果的な方法です。
方程式を解くには、 regula-falsi メソッドはシンプルで直感的な方法です

于 2012-08-16T07:34:47.857 に答える