[0270] 小数点の基数変換

平成11年度秋期 (旧)第2情報処理技術者試験より
次の 10進小数のうち、2進数で表すと無限小数になるものはどれか。
0.05
0.125
0.375
0.5

正解

解説

 基数変換に関する問題です。

 少数点を含む 10進数から 2進数へ基数変換するには、まず整数部分と小数部分に分けて考えます。整数部分は 2 で割っていく操作、小数部分は 2 を掛けていく操作で変換することができます。下図は、10進数 6.625 を 2進数へ基数変換する計算例です。




 整数部分の基数変換は、2で割り続けるのでいつかは必ず商が 0 となりますが、小数部分は、2を掛け続けても .0 とならない場合があります。例えば、10進数 0.2 を 2進数に基数変換すると、0.2 × 2 = 0.4、0.4 × 2 = 0.8、 0.8 × 2 = 1.6、0.6 × 2 = 1.2、0.2 × 2 = 0.4 ・・・ となり、一番最初の計算と戻ってしまいます。つまり、2進数では、0.001001001 ・・・ と“001”が繰り返されるので循環小数になります。

 それでは各選択肢の数字を基数変換してみましょう。

 0.05
0.05(10) = 0.00001001001001001 ・・・ (2) となります。

 0.125
0.125(10) = 0.001(2) となります。

 0.375
0.375(10) = 0.011(2) となります。

 0.5
0.5(10) = 0.1(2) となります。


 よって、アが正解となります。
※ 解説の内容は執筆時点のものであり,含まれている情報の正確性,妥当性について保証するものではありません。ご注意ください・・・

関連する(かもしれない)問題