重箱のおすみつき

普段目を向けない、すみっこにスポットライトを当てるブログ

n進数の世界における0.999...=1

\( 0.999...=1 \)という数式を見たことはあるでしょうか?

今回は、n進数でこのような数式を考えてみたいと思います。

f:id:jab_a_corner:20200927093427p:plain

目次

\( 0.999...=1 \)の説明、証明(のようなもの)

改めて、

$$ 0.999...=1 $$

を眺めてみましょう。

左辺は、小数点以下に9が無限に、永遠に、終わりなく続くという意味です。 他にも、\( 0.\dot{9} \)という表し方もあります。(というか、そもそも数字の後に「...」を付けて無限に続くことを表す方法は正式な表し方なんでしょうか?)

右辺は、言うまでもなく1です。 これらがイコールで結ばれているので、 左辺も1と同じ値であることを意味しています。

簡単に証明(のようなもの)をしておきます。まず、

$$x=0.999... $$

とおきます。\( x \)を10倍すると、

$$ 10x=9.999... $$

となります。

ここで、\( x \)を10倍した値の小数点以下も 9が無限に続いていることに着目します。

つまり、\( 10x \)の小数点以下は、\( x \)そのものです。

\( 10x \)から \( x \)を引くと、

$$ 10x - x = 9.999... - 0.999...= 9 $$

となります。一方で、\( 10x - x = 9x \) なので、

$$ 9x = 9 $$

となり、

$$ x = 1 $$

が得られました。

最初に \( x = 0.999... \)とおいたので、 結局、

$$ 0.999... = 1 $$

となるわけです。

(この計算過程はググれば出てくるので興味があれば検索してみてね)

無限等比級数で考える

さて、先ほどの\( 0.999...=1 \)は 無限等比級数でも考えることが出来ます。 (ちなみにこれもググれば出てくる...)*1

\( 0.999... \)を、

$$ \begin{aligned} 0.999... &=0.9+0.09+0.009+\cdots \\ &=9/10+9/100+9/1000+\cdots \end{aligned} $$

と書いてみると、 初項が\( 9/10 \)で、公比が\( 1/10 \)の等比数列の無限級数であることが見えてきます。 これを無限等比級数と呼びます。

公比の絶対値が1未満の場合は、無限等比級数は収束し、

$$ \frac{初項}{1-公比} $$

で計算できます。計算してみると、

$$ \begin{aligned} 0.999... &= \frac{9/10}{1-1/10} \\ &= \frac{9/10}{9/10} = 1 \end{aligned} $$

となり、やはり1となることが示されました。

二進数の世界

さて、ここからが本題です。

記事タイトルは「n進数の世界」ですが、ひとまず馴染みが深い(?)二進数の場合を考えてみます。

とりあえず、次の数式を見てください。

 $$ (0.111...)_2=1 $$

左辺の括弧の右下についている"2"は「括弧の中の数値は二進数で表現されている」ということを意味しています。

小数を二進数で表すときも、小数点以下に数字を連ねていきます。

二進数における0.1は十進数における\( 1/2=0.5 \)です。

二進数における0.01は十進数における\( 1/2^{2}=1/4=0.25 \)です。

二進数の各位を十進数で表したものが次の図です。

f:id:jab_a_corner:20200926212734p:plain
図1:二進数の各位の値と十進数との対応

二進数では位が右に行くにつれて、1/2になっていくのです。

ということは、\( (0.111...)_2 \) は、初項が\( 1/2 \)で、公比が\( 1/2 \)の無限等比級数と等価ということになります。

計算してみると、

$$ \begin{aligned} (0.111...)_2 &= \frac{1/2}{1-1/2} \\ &= \frac{1/2}{1/2} = 1 \end{aligned} $$

となり、やはり1となりました。

改めて式を示します。

 $$ (0.111...)_2=1 $$

0と1を用いて表す二進数において、 小数点以下に1が詰まっている状態です。 イメージとしては、 桁が繰り上がる寸前のギリギリの状態、 といったところでしょうか。

桁が繰り上がると、

 $$ (1.0...)_2=1 $$

となりますよね。

n進数の世界

次は、いよいよn進数の場合を考えましょう。

$$ (0.111...)_n $$

この式の括弧の右下についている"n"は、二進数の場合と同様に、「括弧の中の数値はn進数で表現されている」という意味だと考えてください。

n進数では、 \( 0 \)から\( n-1 \)までのn通りの数字を用いて表現します。

考え方は二進数の時と同じで、

n進数における\( 0.1 \)は十進数における\( 1/n \)です。

n進数における\( 0.01 \)は十進数における\( 1/n^{2} \)です。

n進数の各位を十進数で表したものが次の図です。

f:id:jab_a_corner:20200927091921p:plain
図2:n進数の各位の値と十進数との対応

n進数では位が右に行くにつれて、\( 1/n \)になっていきます。

ということで、\( (0.111...)_n \) は、初項が\( 1/n \)で、公比が\( 1/n \)の無限等比級数となります。

無限等比級数の式で計算してみると、

$$ \begin{aligned} (0.111...)_n &= \frac{1/n}{1-1/n} \\ &= \frac{1}{n-1} \end{aligned} $$

となりました。

式変形して、

$$ (n-1)_n \times (0.111...)_n =1 $$

となります。 \( n=2 \)とすれば、二進数の節でみた式となります。

せっかくなので、\( n \)にいろいろ代入してみましょう。

$$ \begin{alignedat}{2} & (0.111...)_2& &=1 \\ 2 \times (0.111...)_3 =& (0.222...)_3& &= 1 \\ 3 \times (0.111...)_4 =& (0.333...)_4& &= 1 \\ 4 \times (0.111...)_5 =& (0.444...)_5& &= 1 \\ 5 \times (0.111...)_6 =& (0.555...)_6& &= 1 \\ 6 \times (0.111...)_7 =& (0.666...)_7& &= 1 \\ 7 \times (0.111...)_8 =& (0.777...)_8& &= 1 \\ 8 \times (0.111...)_9 =& (0.888...)_9& &= 1 \\ 9 \times (0.111...)_{10} =& (0.999...)_{10}& &= 1 \\ f \times (0.111...)_{16} =& (0.fff...)_{16}& &= 1 \end{alignedat} $$

以上のように、n進数の世界の\( 0.999...=1 \) を見ることができました。 当然、\( n=10 \) の十進数を考えると、 \( 0.999...=1 \)となるわけです。

まとめ

\( 0.999...=1 \) を初めて見たときは、不思議な気持ちになった方もいるかと思いますが、 今回もまた懐かしい気持ちを味わえたのではないでしょうか。

この式はどこかで役に立つ訳ではないと思いますが、 n進数の世界を垣間見れたのでヨシとしましょう。

*1:これは「る」が無限に続くわけではない...