令和6年度 高度共通 午前I(PM試験) 問2

分野:アルゴリズムとプログラミング|実際に出題されたIPA過去問題

式 A+B×C の逆ポーランド表記法(後置記法)による表現として適切なものはどれか。

  1.  +×CBA
  2.  ×+ABC
  3.  ABC×+
  4.  CBA+×
解答・解説を見る

正解:ウ

AI解説

逆ポーランド表記法(後置記法)は、演算子を被演算数の後ろに置く記法である。A+B×Cは乗算が優先されるため、まずB×Cを後置記法にするとBC×となり、次にAとその結果を加算するのでA(BC×)+、すなわちABC×+となる。演算子の優先順位どおりに内側から後置に変換していくのが手順である。 ア: +×CBAは被演算数より前に演算子が来ており、前置記法(ポーランド表記法)を逆順に並べたような形で、A+B×Cの後置記法ではない。 イ: ×+ABCは前置記法であり、意味は×(+AB)C、つまり(A+B)×Cを表す。記法も式の意味も異なる。 ウ: 正しい。ABC×+は、BC×(=B×C)を先に計算し、その結果とAを+で加算する、A+B×Cの後置記法である。 エ: CBA+×は後置記法として読むとBA+(=B+A)を先に計算しCと乗算する、C×(B+A)を表し、元の式と意味が異なる。 💡 後置記法はスタックで検算できる。左から読み、被演算数は積み、演算子が来たら直前の2つを取り出して計算する。ABC×+ならB×Cの結果とAが加算され、A+B×Cに一致する。

出典:令和6年度 秋期 プロジェクトマネージャ試験 午前I 問2 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。
📱 演習アプリで解く(無料・登録不要・904問収録)

「アルゴリズムとプログラミング」分野の攻略ポイント

データ構造・アルゴリズム・探索と整列・計算量・擬似言語・プログラム言語・データ記述言語が対象です。擬似言語のトレースは時間はかかるものの、落ち着いて表を書けば必ず正解にたどり着く「確実に取れる」問題です。

アルゴリズムとプログラミングの攻略ポイントをすべて見る(要点6項目・ひっかけ3項目)→

同じ分野(アルゴリズムとプログラミング)の過去問