- ベストアンサー
式計算アルゴリズムについて
Javaを使用して、入力した式の計算結果を返す処理を考えているのですが、良い処理方法が見つかりません。 何か良いアルゴリズムがありましたら、ご享受願います。 入力形式は 1+2+(-3+4)*5 と1行の式で入力し、 8 と答えが返るようにする事が目標です。 ※逆ポーランド記法を試してみたのですが、 括弧→() や 整数に符号→- が付いた際に処理が複雑になってしまい、挫折気味です・・
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
eval関数を使うと出来そうですね。 以下のURLにソースコードもある様なので、 参考にされたらいいですか。 http://www.ne.jp/asahi/hishidama/home/tech/soft/java/eval.html 利用だけの問題なら、 eval.jarをライブラリーにアマントすれば 出来るようになりますよ。
お礼
ありがとうございます。 処理内容は期待通りの物であるようなので、 参考にさせて頂きます。