情報に関する理論 (全37問中30問目)

No.30

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

分類

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

正解

解説

逆ポーランド表記法は、演算子を被演算子の右側に記述する表記法です。

例えば、
 A=4×5−6+3×2

という式を逆ポーランド表記法で記述すると、
 A45×6−32×+=

となりこれを構文木にすると、次のようになります。
08a.gif/image-size:389×278
この構文木は式の並び順のとおりに左の葉→右の葉→節という後行順序で操作を行います。

問題に戻ると、演算子の前にCとDがスタックに積まれています。つまり先に積まれている「C」が左の葉の値、「D」が右の葉の値ということになります。これを逆ポーランド表記の式にすると「CD演算子」と変換することができます。

答えは中置表記法で記述するので、正解は「C 演算子 D」となります。
© 2010-2018 応用情報技術者試験ドットコム All Rights Reserved.

Pagetop