為什麼有理數可以寫成有限小數或無限循環小數?

無限小數的有理數,為什麼一定會循環?


我們用小學的知識考慮。按定義,有理數的就是可以表示成兩個整數相除的數,也就是分數。當然,除數也就是分母不是 0。

現在用分子除以分母表示成小數形式。你想除法的豎式啊,不停地試除得到一位商,不停地得到一個餘數。

這個過程可能停下來,也就是餘數為零,除盡了。這個時候得到的就是有限小數。

這個過程也可能停不下來,也就是說餘數一直不是零,那就得到的是無限小數了。那為什麼循環呢?因為分子(被除數)位數有限,算到小數點後試除的商就僅由余數和除數決定了。除數是固定的,所以只要餘數與前面試除的餘數開始重複了,後面整個長除法的過程就要重複了,小數就要循環了。所以只要說明餘數會重複,就知道除法的結果肯定循環。

餘數肯定重複。因為餘數比 0 大(沒除盡),比固定的除數小(除法定義)。餘數的變化就那麼多種,最多變化除數那麼多次以後就肯定和以前重複了,這就是所謂抽屜原理或者叫鴿巢原理。


我們採用進位b

然後我們觀察:

如果x_1,...x_n 都是最終循環的數( 就是說, 小數位前有限位可以不參與循環 )

那麼: x_1+x_2+...+x_n 也是最終循環的數, 這個結論直接利用b進位數的加法運算得到

(我們可以把x_i的各個位加起來, 得到一個最終循環的數列, 但是我們要向前進位, 但是這不影響最終循環的特性)

也就是說, 我們只需要證明所有的frac{1}{p}都是最終循環的

如果p能被b的冪整除 ( 就是p的質因子都是b的質因子 )

那麼frac{1}{p}=frac{b^k}{p}frac{1}{b^k}, frac{b^k}{p}是整數, frac{1}{b^k}是一個有限位(事實上就是有一個位不是0的數)

這種情況下結論成立, 事實上frac{1}{p}是有限位的.

那麼我們進一步觀察,

如果 x是有限位的, y是最終循環的

那麼 xy 是最終循環的, 因為這種情況下, xy 可以轉化成有限個最終循環數的和

p=ak, 其中 a是能被b的冪整除的, k的質因子都不是b的質因子

frac{1}{p}=frac{1}{a}frac{1}{k}

我們只需要看 (k,b)=1 的情況下, frac{1}{k}是不是最終循環的

這種情況下, b看成mathbb{Z}/kmathbb{Z}( 作為一個環 )的元素, 是一個unit(可逆元素), 事實上所有的unit基於乘法構成群, 階數是 phi(k).

於是, <b> 記為 由 bb的冪組成的乘法群, 是一個有限群, 其實是一個循環群, 是unit元素組成的群的子群, 所以階數可被phi(k)整除,

b^{phi(k)}=(b^{|<b>|})^{phi(k)/|<b>|}=1^{phi(k)/|<b>|}=1 MOD k

於是:

frac{1}{k}=frac{1}{b^{phi(k)}-1}frac{b^{phi(k)}-1}{k}

frac{b^{phi(k)}-1}{k} 是一個整數

frac{1}{b^{phi(k)}-1}=b^{-phi(k)}+b^{-2phi(k)}+b^{-3phi(k)}+...

b進位表示下是: 0.000..001000..001000..001( 每隔 phi(k)位出現一個1)

於是, 這樣的frac{1}{k}是最終循環的, 循環節的位數是 phi(k)., 當然可能出現循環節位數是phi(k)的因數的情況.


「義答計劃」:

具體的情況請看【愛心募捐】病魔無情,西電有愛!,他是我的好朋友。

我沒有別的才能,只有在知乎有一點點影響力,也只在數學和演算法話題下能給一些知友滿意的答案。因此我決定在這裡盡我的綿薄之力。

最近幾天,我將儘力在知乎回答各種力所能及的數學、演算法問題,同時附上這句話。為了不刷屏,有些題目可能會匿名回答。希望大家在得到滿意答案的同時,能夠幫幫我的朋友。謝謝大家了!

具體的情況鏈接中都有,包括捐款方式。

有兩點情況我可以保證:

1.這件事絕對是真實的,您的捐助一定會交到我朋友家裡,沒有任何問題。在這種錢上動手腳的人是會被萬人唾罵的;

2.這裡是知乎,無論我出於什麼目的去答題,我都會保證答案的質量。

再次感謝大家!佔用了大家的TL,抱歉。

———————————————————————————————

在這裡我給出一個強一點的結論,以10進位為例。

有理數frac{a}{b} (分子分母均為自然數,分數值小於1,分子分母互素):

  1. 若b的質因數只含2和5,則其可化為有限小數;(顯然)

  2. 若b和10互質,則其可化為純循環小數,其循環節長為最小的滿足10^{l}equiv 1(mathrm{mod}b)的自然數l

  3. 若b的質因數中既含有2和5,也含有其他素數,那麼其同樣可化為循環小數,循環節長度同2,但是要將b的質因數中的2和5全部除掉。

但是求解循環節長度並不容易,因為這相當於求解方程10^{x}equiv 1(mathrm{modb})。去掉後邊的取模,相當於我們熟知的對數運算。而加上取模之後就相當於在模b的剩餘系中進行對數運算,即離散對數。而目前求解離散對數並沒有什麼好方法。

關於結論的證明可參考:純循環小數循環節的規律;

關於離散對數課參考:x^A=B(mod C)的解 (離散對數與原根)


推薦閱讀:

數學中有哪些非常直觀的命題卻難以證明?
如何理解常微分方程的解?
作為老教師,你對新入職的年輕教師有什麼建議?作為曾經的學生,你喜歡什麼樣的老師?
怎樣高效閱讀數學書?
這是不是第16種「可鑲嵌五邊形」?

TAG:數學 | 代數 | 數學普及 |