対話式で記憶に残る応用情報:2進数の並びを逆にする

応用情報技術者試験

こんにちは、おゆかよです。
この記事では、応用情報技術者試験に出題された2進数の問題を、計算ではなく「検証」で解くテクニックをご紹介します。パターンが限られている場合、冷静に確認することで素早く正答にたどりつけます。^^

問題と解答

わたし
わたし

博士、この問題、最初は数式を展開しようとしてたんだけど…

2桁の2進数 \(x_1x_2\) が表す整数を \(x\) とする。2進数 \(x_2x_1\)​ が表す整数を、\(x\) の式で表したものはどれか。
※int(r) は非負の実数 r の小数点以下を切り捨てた整数を表す。

ア. \(2x + 4 \cdot \text{int}\left( \frac{x}{2} \right)\)
イ. \(2x + 5 \cdot \text{int}\left( \frac{x}{2} \right)\)
ウ. \(2x – 3 \cdot \text{int}\left( \frac{x}{2} \right)\) ← 正解!
エ. \(2x – 4 \cdot \text{int}\left( \frac{x}{2} \right)\)

出典:応用情報技術者試験 令和5年度秋期試験 午前問題 問1

検証で解ける!

博士
博士

ふむ、しっかり式を使って解くのも良いけど、この問題はもう少しシンプルに考えてもいいかもしれないね。

わたし
わたし

実は、考えてみたら2桁の2進数って「00」「01」「10」「11」の4通りしかないんだよね。
だから、全部のパターンを確かめればいいのかなって。

博士
博士

その通り。\(x\) の値も 0~3 だけだし、それぞれの逆順の値と式の結果を比べてみれば、正しい選択肢が見えてくるよ。

わたし
わたし

表にするとこんな感じだね。

\(x\)元の2進数逆順の2進数\(x’\)(逆順の値)
000000
101102
210011
311113
博士
博士

では、それぞれの選択肢に代入して、式の出力と一致するかどうかを確かめればいいね。

わたし
わたし

やってみたら、「ウ」だけが全て一致したんだ。
他の選択肢はどこかでズレてたから、計算せずに判断できたよ。

博士
博士

冷静にパターン数を見極めて、検証で進めるのは良い判断だね。
試験では時間配分も大切だから、こういう解き方も覚えておくと有効だよ。

まとめ

  • 2桁の2進数のパターンは4通りしかない(00~11)
  • 各選択肢の式に \(x = 0~3\) を代入して、逆順の値と一致するかを確認すれば、正解をすぐに見つけられる
  • 理解も大切だが、本番では確実かつ速く正解を導ける方法を選ぶのが有効

コメント

タイトルとURLをコピーしました