情報に関する理論 (全53問中39問目)

No.39

逆ポーランド表記法で表された式を評価する場合,途中の結果を格納するためのスタックを用意し,式の項や演算子を左から右に順に入力し処理する。スタックが図の状態のとき,入力が演算子となった。このときに行われる演算はどれか。ここで,演算は中置表記法で記述するものとする。
08.png/image-size:117×109
  • A 演算子 B
  • B 演算子 A
  • C 演算子 D
  • D 演算子 C
  • [出題歴]
  • 応用情報技術者 H28秋期 問3
  • ソフトウェア開発技術者 H18秋期 問8

分類

テクノロジ系 » 基礎理論 » 情報に関する理論

正解

解説

逆ポーランド表記法は、演算子を被演算子の右側に記述する表記法です。例えば、A=4×5-6+3×2という式を逆ポーランド表記法で記述すると、A45×6-32×+=となります。

上記の逆ポーランド表記法の式を左から順にスタックに積んでいくことを考えると、
08_1.png/image-size:361×111
というようにスタックに積まれていきます。次に"×"が現れたときには元の式の4×5を行いたいので、スタックの上の二つを取り出して演算子が示す演算4×5=20を行い、その結果をスタックに積みます。
08_2.png/image-size:217×137
次に"6"を積むと、"-"の演算子が現れます。今度はスタックから"20"と"6"を取り出して20-6を行い、その結果をスタックに積みます。
08_3.png/image-size:217×137
このように演算子が現れたときには、スタックの上から2つ目の値を前の項、スタックの1番上の値を後ろの項として、演算を行っていくことになります。設問のスタックでいえば、Cが前の項、Dが後ろの項となります。したがって行われる演算は「C 演算子 D」です。
© 2010-2024 応用情報技術者試験ドットコム All Rights Reserved.

Pagetop