基本情報技術者平成18年春期 午前問10

問10

後置表記法(逆ポーランド表記法)では,例えば,式 Y=(A-B)×C を YAB-C×= と表現する。
 次の式を後置表記法で表現したものはどれか。

 Y=(A+B)×(C-(D÷E))
  • YAB+CDE÷-×=
  • YAB+C-DE÷×=
  • YAB+EDC÷-×=
  • YBA+CD-E÷×=
  • [出題歴]
  • 応用情報技術者 H22秋期 問1
  • 基本情報技術者 H24春期 問4
  • ソフトウェア開発技術者 H16春期 問7

分類

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

正解

解説

逆ポーランド表記法(後置表記法)は、演算子を2つの被演算子の右側に記述する表記法です。通常の数式の「A+B」を逆ポーランド表記法で表現すると「AB+」となります。

通常の式を逆ポーランド表記法で表現するときには、通常の式を計算するとの同じ順番(括弧の中優先、剰余算優先)で、普通に計算式を解くのと同じ要領で変換していきます。一度変換した部分はひとまとまりの項として扱うことがポイントです。

Y=(A+B)×(C-(D÷E))を、ひとつずつ順番に逆ポーランド表記法に変換していきましょう。
  1. まず括弧内のA+B と D÷Eを変換します。
     Y=AB+×(C-DE÷)
  2. 次にもう一つの括弧内の(C-DE÷)を変換します。
     Y=AB+×CDE÷-
    この時「DE÷」を一つの項として考えると、「C」-「DE÷」⇒CDE÷-となることを理解しやすいかと思います。
  3. 次に右辺でまだ演算をしていない、"×"の左側と右側で演算します。先程と同様に「AB+」×「CDE÷-」⇒AB+CDE÷-×と考えます。
     Y=AB+CDE÷-×
  4. 最後に 左辺と右辺を"="で演算して逆ポーランド表記法への変換が完了します。
     YAB+CDE÷-×=
したがって答えは「ア」となります。

通常の式から、逆ポーランド表記法への変換はそれほど難しくありませんが、その逆(逆ポーランド⇒普通の式)は、迷ってしまう人もいるのではないでしょうか。今後も出題される可能性がありますので押さえておきたいですね。
© 2010-2024 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop