SC情報処理安全確保支援士試験 午前Ⅰ
令和6年度秋期 情報処理安全確保支援士 午前Ⅰ 問2
問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。
問題
選択肢
- ア+※XCBA
- イメメ十ABC
- ウABCX十
- エCBA十※
解き方のヒントを見る
午前I 問02:計算の順番を守って後置記法に直そう
中置記法では、かけ算は足し算より先に計算するルールだよ。だから `A + B × C` のような形なら、まず `B × C` をひとまとまりにして、その結果を `A` と足す流れになるように後置記法へ並べればOKだよ。
この問題で問われていること
この問題では、式をただ左から順に並べ替えるのではなく、かけ算を先に計算するという演算子の優先順位を保ったまま、正しく後置記法に変換できるかがポイントだよ。
逆ポーランド表記
`A + (B × C)` を後置記法へ並べると `A B C × +` になる。
infix: A + B × C\npostfix: A B C × +
確認ポイント
- 乗算を先に処理する。
- 演算子は対象オペランドの後ろへ置く。
- `ABC*+` の並びを作る。
正解と解説を見る
正解
ウ
出典
問題文と解答は IPA 公開の過去問題冊子・解答例を基にしています。
選択肢ア
これは間違いだよ。「+×CBA」は演算子が先に来ているので、逆ポーランド表記ではなく、命令が先走っている形だよ。逆ポーランド表記では、まず A・B・C のような値を置いてから、× や + を後ろに置くんだ。
選択肢イ
これは間違いだよ。「×+ABC」だと、最初にいきなり「掛けて」「足して」と命令だけ来ていて、材料がまだ出ていない状態なんだ。レジで商品を出す前に「会計して」と言うようなもので、逆ポーランド表記の形になっていないよ。
選択肢ウ(正解)
これは正解だよ。逆ポーランド表記は、料理の手順みたいに「材料を先に並べて、あとから調理記号を書く」形なんだ。A+B×C は、まず B と C を掛け算してから A を足すので、A B C × +、つまり「ABCX十」の順になるよ。
選択肢エ
これは間違いだよ。「CBA+×」を読むと、先に B と A を足して、その結果に C を掛ける形、つまり C×(B+A) のような意味になってしまうよ。元の式 A+B×C は「B×C を先に計算してから A を足す」ので、計算の順番が違うんだ。
出典:独立行政法人 情報処理推進機構(IPA)令和6年度秋期 情報処理安全確保支援士試験 午前Ⅰ 問2(公式資料:問題冊子(PDF) / 解答例)
関連する過去問一覧
IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針