※本問題は、公益社団法人 日本技術士会「技術士第一次試験 過去問題(令和6年度)」より引用しています。
出典: https://www.engineer.or.jp/c_topics/010/attached/attach_10606_1.pdf
I-2-1 問題
I-2-1 10進数での「0.6」を2進数表現したものとして、最も適切なものはどれか。
ただし、以下の2進数表現では、小数点以下16位までを示している。
① 0.1001100110011001
② 0.1011001100110011
③ 0.1100000000000000
④ 0.1100110011001100
⑤ 0.1110011001100110
解説
基数変換に関する問題です。
度々出題されていますので、基本的な変換方法はすべて覚えておきましょう。

0.6のように「小数を2進数に変換する」ときは、整数のときとルールが異なります。
特に初めて学ぶ方は、「かけ算していくの?」と思うかもしれませんが、以下の手順で簡単にできます。
🔹【1】整数部分の変換(通常通り)
1. 普通の10進数→2進数の変換と同じように「2で割って余りをとる」方法で求めます。
(商が0になるまで2で割る→余りを下から読む)
2. 小数点を打つ。
🔹【2】少数部分の変換(2をかけて、整数を取り出す)
1. 少数に「2」をかける
2. 出てきた 整数部分(0または1) を記録する
3. 残った少数部分にまた2をかける
4. これを繰り返す(十分な桁数になるまで)
では、実際の手順に沿って「0.6」を変換してみましょう。
まずは【1】整数部分の処理から解説します。
整数部分は「0」です。
0÷2を筆算してみると下図の通りです。

整数部分の変換は上図の黄色枠「0」となります。0の後ろに小数点を打って「0.●●●●」となり、【1】の手順は終わりです。
続いて手順【2】についてみていきましょう。
この図は、「0.6 × 2」の計算を繰り返していく様子を、1ステップずつ記録したものです。

手順【2】で記録した整数部は、上から順に黄色枠内の数字を並べて「10011…」です。
手順【1】で出した答えと合わせて、「0.10011…」となります。
以降も数字は16位まで続いていきますが、選択肢を見てこの並び順になっているのは、①の「0.1001100110011001」のみです。
解答と注意点
解答:①
「10進数から2進数」や「10進数から16進数」などの変換も覚えましょう。
✨もるみ先輩の評価コメント(出題頻度&解答優先度)
基礎問題は6問中、3問を選択解答します。
過去10年分のデータから、「よく出る問題か」「解答する3問に入るテーマか」という視点で独断と偏見による評価をします。問題の好みや得意分野は人それぞれのため、私の個人的な意見としてあくまでも参考として見ていただけたら幸いです。(もるみ先輩が捨て問だと思っていても、得意な人からしたらその問題は得点源です!)
頻出度:★★★(直近11回の試験で5回程度)
解答候補としての優先度:◎(必ず覚えるべき得点源)

得点源なので確実に取りたい1問!必ず覚えましょう。
類題も多く出題されているので、似たパターンの練習もしておくと安心です!
コメント