循環小数
循環小数(無限小数)の循環節が「0」もしくは「9」の場合は、どちらも実質的には有限小数となる。一般に、正の実数について、有限小数は二種類の循環小数で表せ、逆に、二通りに小数表示できるのはその一方が有限小数である場合に限る。
一つには、循環節は 0(0桁という意味でなく、繰り返し単位が「0」)と考えることができる。もう一つは、有限小数の(0 でない)末尾を 1 減らし、それよりあとの位を全て「基数 − 1」にするというものである。
例えば、1 は 1.0000... と表せ、これは循環節が 0 の循環小数である。一方、末尾の 1 を 1 減らして 0 にし、それよりあとを全て 9 にした 0.999... に等しいとも考えられる。これは循環節が 9 の循環小数となる。
0.9999... = 1 は以下のように証明できる。
x = 0.9999...とする。
10x = 9.
基数に素因数として含まれない素数 p の逆数に対しては、循環節を m 桁とすると 10 - 1 は p で割り切れ、商が循環節となるので、p - 1 の約数それぞれに対し 10 - 1 が p で割り切れるかを試せばよい。m が小さい順に試せば、計算量を節約できる(たとえば 1⁄3 = 0.333... に対しては 3 (m = 1) も 33 (m = 2) もこれを満たすので、小さい順でなければならない)。
7B425ED09 となり、小数部分は9桁の「7B425ED09」が繰り返されることが分かる。この割り切れない「0.7B425ED09」を分数化すると、十六進法で D/1B、十進法で 13/27 となる。
六進法の 1104 ÷ 43(六進冪指数の場合 2 ÷ 3、十進法の場合 256 ÷ 27)
小数部分が3桁の「252」で終わって、1104÷43 = 13.252 となる。割り切れる小数「0.252」に相当する六進分数 252/1000 は、十六進法で 68/D8、十進法で 104/216 となり、既約分数にすると六進法で 21/43、十六進法で D/1B、十進法で 13/27 となる。
一般に、a を b で割る筆算では、ある整数を b で割った商と余りを計算することを繰り返すが、b で割った余りは 0 から b − 1 の b 通りしかないため、余りが 0 になって計算が終わるのでなければ、必ずどこかで同じ余りが出現して同じ計算の繰り返しとなる。ゆえに、有理数を小数表示すると循環小数になる。この方法では循環節の長さの上限を事前に知っておく必要はないが、「分母 − 1」以下であることがこれによりわかる。