• 締切済み

電卓プログラムでかっこを対応させたい

現在、JApplet(JFrame?)を使って電卓を作っています。 今、壁に当たっており、計算式に"("や")"を使ったら、それに対応するように計算させたいのですが、どうにも上手く行きません。 色々方法は試しているのですが、かっこの中身が何かと無視されるケースが多く・・・ ソースはzipファイルにして下記にアップロードしてみました、どうかお知恵をお貸しください。 http://www1.axfc.net/uploader/File/so/26937

みんなの回答

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

後置記法に変換するかどうかはさておいて, いずれにしても「その式がどのような構造をしているのか」は解析しなきゃならないです. 今どきなら再帰下降パーザが普通でしょうか. そのあとで後置記法に変換するなり構文木を作るなりパーザで直接計算するなりということになるでしょう. で, あまり言いたくはないんだけど「いずれにしてもソースの書き直しに近い」と思います. そもそも現状だと「(1+2)=」がエラーになるくらいだし.

  • ttnnkkyy
  • ベストアンサー率26% (255/979)
回答No.1

やり方は幾つかありますが、後置記法に変換するのがお勧めです。 17年秋の基本情報技術者試験の午後の問4 http://www.jitec.ipa.go.jp/1_04hanni_sukiru/mondai_kaitou_2005h17.html#17aki

参考URL:
http://www.google.co.jp/search?q=後置記法に変換
PurplePers
質問者

補足

申し訳ありません、私の技量不足もあるのでしょうが、現状のやり方だとどうも後置記法はほぼ1からソースを書き直さなければいけなく、少々実現が難しいのです。 よろしければ、他の方法は、ありませんでしょうか。