平成24年度 春期 基本情報技術者試験 午前 問4
テクノロジ/基礎理論後置記法(逆ポーランド記法)では,例えば,式 Y=(A-B)×C を YAB-C×= と表現する。次の式を後置記法で表現したものはどれか。 Y=(A+B)×(C-D÷E)
出典:平成24年度 春期 基本情報技術者試験 午前 問4
- アYAB+C-DE÷×=
- イYAB+CDE÷-×=
- ウYAB+EDC÷-×=
- エYBA+CD-E÷×=
正解:イ
解説
後置記法では,演算子をその両側の被演算子の後ろに置きます。Y=(A+B)×(C-D÷E) を計算順に分解すると,まず A+B,次に D÷E,次に C-(D÷E),最後にそれらの積を Y に代入する,という順序になります。これを後置記法にすると,YAB+CDE÷-×= となります。
選択肢ごとの解説
- ア誤り。DE÷ の位置が C- より前に来ておらず,C-(D÷E) の計算順序が正しく表現されていません。
- イ正しい。AB+ で(A+B),DE÷ で(D÷E),CDE÷- で C-(D÷E),最後に×でこれらの積を求め,Yに代入する順序になっています。
- ウ誤り。EDC÷- という並びでは D÷E ではなく E÷D を計算した上で C から引く形になり,元の式と異なります。
- エ誤り。先頭がYBAとなっており,A-BではなくB-Aの順で被演算子が並んでいるため,元の式と対応しません。