逆ポーランド記法 過去問題 解説 基本情報技術者試験対策
コンピューターの構成
逆ポーランド記法 過去問題 解説
では、例題を見ていきましょう。
X=A*(B+C) (X イコール A 掛ける カッコ B プラス Cカッコ 閉じる)を逆ポーランド記法で示せ
では、解答を見てみましょう。
- 計算式で優先順位が高いのは、カッコ内の B+C
- この B+C を逆ポーランド記法に変換すると、BC+
- この BC+ をPと置き換えると、全体の式は、X=A*Pとなります。
- 次に優先順位が高いA*Pを逆ポーランド記法に変換すると、AP*
- この AP* をQと置き換えると、全体の式は、X=Qとなります。
- 最後に X=Q を逆ポーランド記法に変換すると XQ=
これで変換は全て終了となります。 - この後、置き換えたQとPを元に戻していきます。
置き換えたQは、AP*なので、これを戻すと XAP*= - 次に置き換えたPは、BC+ なので、これを戻すと XABC+*=
このように、演算の最小単位である、2つの変数と1つの演算子を計算の優先順位に従って、逆ポーランド記法に変換をして、それぞれ別の変数に置き換えて、まとめていきます。
式全体の変換が終わると、置き換えた変数を順番に元に戻していけば完了です。
————————–過去問題
では、基本情報技術者の過去の問題を見てみましょう。
問題
次の式を後置記法で表現したものはどれか。
Y=(A+B)×(C-(D÷E))
解答の手順は、
- 優先順位の高い (A+B) を変換して、 AB+ これをKとします。
- 次に優先順位の高い (D÷E) を変換して、 DE÷ これをLとします。
元の式に置き換えると Y=K×(C-L) となります。 - 次に優先順位の高い (C-L) を変換して、CL- これをMとすると、
元の式は Y=K×M となります。 - 次にK×M を変換して、KM× これをNとすると、
元の式は Y=N となります。 - 最後に、Y=N を変換して、 YN= これで全ての変換が終わりました。
- 次は順番に置き換えた変数を元に戻していきます。
まず、Nを戻すと、NはKM×なので、YN= は YKM×=となります。 - 次にMを戻すと、MはCL-なので、YKM×= は YKCL-×=となります。
- 次にLを戻すと、LはDE÷なので、YKCL-×= は YKCDE÷-×=となります。
- 最後にKを戻すと、KはAB+なので、YAB+CDE÷-×= となります。
よって答えは、[イ]となります。
基本情報技術者試験 動画 おすすめ
コンピュータの構成
基本ソフトウェアとは
コンテンツの利用について
こちらをお読みください