• ベストアンサー

通常の表記から逆ポーランド表記への変換法

通常の表記から逆ポーランド表記への変換法を教えて下さい!お願いします★

質問者が選んだベストアンサー

  • ベストアンサー
  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.1

最初のうちは、演算式を括弧でくくることから始めましょう。 二項演算の形でくくっていきます。括弧は何重になっても構いません。 ただし演算の順序に気をつけてください。 そしていちばん内側のまたは一番早く演算する括弧の中の演算子を括弧の中で 一番後ろに動かします。ここからはこの3文字を1文字と見ます。括弧を外しながら 次々に変形していって括弧がなくなれば終わりです。 (例)z=a*b/c+d-e*f    (z=((((a*b)/c)+d)-(e*f)))    (z=((((ab*)/c)+d)-(ef*)))    (z=(((ab*c/)+d)-(ef*)))    (z=((ab*c/d+)-(ef*)))    (z=((ab*c/d+)-(ef*)))    (z=(ab*c/d+ef*-))    (zab*c/d+ef*-=)     zab*c/d+ef*-= 例題が数例参考URLにあります。       

参考URL:
http://risky.cs.inf.shizuoka.ac.jp/compiler2/sld018.htm

関連するQ&A