アルゴリズムとプログラミング
基本情報技術者試験 科目A免除 修了試験 20180610 実施分 問4
次に示す計算式と逆ポーランド表記法の組合せのうち,適切なものはどれか。
| 計算式 | 逆ポーランド表記法 | |
|---|---|---|
| ア | ((a+b)*c)−d | abc*+d− |
| イ | (a+(b*c))−d | ab+c*d− |
| ウ | (a+b)*(c−d) | abc*d−+ |
| エ | a+(b*(c−d)) | abcd−*+ |
答えを選ぶ
出典:基本情報技術者試験 科目A免除 修了試験 20180610 実施分 問4(問題文は IPA の公開問題。解説は当サイト作成)
答えと解説を見る
正解:エ
覚える知識
逆ポーランド表記(後置表記)の式変換
逆ポーランド表記は、演算子を2つのオペランドの直後に書き、括弧なしで評価順を表す記法である。
この問題で必要なこと
後置表記は演算子をオペランドの後ろに置く。a+(b*(c−d)) は c−d を先に評価し abcd−*+ となる。
ひっかけ
他の選択肢は演算の順序を取り違えた変換になっている。
この知識の出題:本試験系 5 回・免除試験 10 回(公開問題での観測値)