後置表記法(逆ポーランド表記法)では,例えば,式Y=(A-B)×CをYAB-C×=と表現する。
次の式を後置表記法で表現したものはどれか。
Y=(A+B)×(C-(D÷E))
正答2
解説
正解は2です。
後置表記法(逆ポーランド表記法)は、演算子を2つの被演算子の後ろに書く表記法です。
括弧の内側から順に、「被演算子、被演算子、演算子」の形に書き換えます。
例にならい、式全体はYで始めて、最後に=を置きます。
【計算】
D÷Eは、DE÷になります。
C-(D÷E)は、CDE÷-になります。
A+Bは、AB+になります。
(A+B)×(C-(D÷E))は、AB+CDE÷-×になります。
Yと=を付けると、YAB+CDE÷-×=です。
【選択肢別解説】
1:× YAB+C-DE÷×=は、((A+B)-C)×(D÷E)を表します。
A+BからCを引いてしまうので、本問の式とは異なります。
2:○ 括弧の内側のD÷Eを先に計算し、それをCから引いてから、A+Bと掛ける順序が正しく表されています。
3:× YAB+EDC÷-×=では、DとCとEの並びが逆です。
この表記ではD÷Cの結果をEから引く式になり、本問とは異なります。
4:× YBA+CD-E÷×=では、C-Dを先に計算してからEで割る式になります。
D÷Eを先に計算する本問の式とは異なります。
【ポイント】
逆ポーランド表記法は、スタックを使って左から順に処理できるので、コンパイラの式の評価に使われます。
変換は「内側の括弧から」「被演算子を先、演算子を後」と覚えましょう。