在小學的起初階段,大家所學的計算都是自然數的加、減、乘、除。大家有沒有發現一個規律:兩個自然數,無論是做加法運算,比如:2+3=5;減法(小學階段沒學負數,大減小)3-2=1;還是乘法比如:2×3=6,計算出來的結果都是自然數。
但除法很特別,兩個自然數相除有可能正好能整除,得到的是整數,比如8÷4=2。
但也有可能不能整除,比如10÷6=1……4。雖然被除數和除數都是整數,但還是不能整除,產生了餘數。
為什麼會這樣?這是因為在整數範圍之內,加法、減法、乘法都具有封閉性,進行這三種運算得到的結果仍然是整數。換句話說如果整數的加、減、乘法運算結果得到的不是整數,那麼計算結果一定是錯誤的。
但是除法運算就沒有封閉性。
也正是由於這種不確定性,比如我們列豎式除法,要進行試商。大多數人沒那麼喜歡除法,乘法的結果就一種明確的答案,相對而言乘法要簡單明了一些。
但事實上我們現實生活中,真正能整除的情況是比較少的。也就是說帶餘除法會更普遍。我們無法因為不喜歡它就遠離它。如果能想辦法把帶餘除法變成整除不就好多了?整除換個形式其實就是乘法的逆運算。a÷b=c,將這個式子變形一下,a=b×c,這不就是大家熟悉的乘法運算嗎?
那麼帶餘除法和整除有什麼關聯嗎?能轉化嗎?
被除數÷除數=商……餘數,如果用字母來表示:a÷b=c……d。
被除數=除數×商+餘數,如果用字母來表示:a=b×c+d。根據等式的性質,我們可以將這個式子進行變形,a-d=b×c,b=(a-d)÷c。
舉個例子:8÷3=2……2,如果要讓它變成整除形式怎麼辦呢?用被除數減2,剩下的部分不就能整除了?(8-2)÷3=2。
不過這只是其中的一種常見思路,另外一種,我們去給這個被除數加上一部分也是可以讓它能變成整除的。還以剛才的數據為例題。假如爸爸有8顆糖分給姐弟3人,發現無法平均分,因為少1顆。那怎麼辦,隊了每人分2顆,剩下2顆外。如果再來1顆糖的話,那不就每個人都能得到3顆,也就變成了9÷3=3(顆)。
這個思路可能覺得有點奇怪,改變了原來的答案。確實在平常的解題過程中,我們一般是不會用到這種思路的。但在同餘問題,它卻是一個必須掌握的方法之一。
比如下面道來自(楊輝《續古摘奇算法》)的題:七數剩一,八數剩二,九數剩四,問本數?
用我們今天的話來說,7個7個數餘1,如果8個8個數餘2,如果9個9個數餘4,問這個數是多少?
我們再把它翻譯成數學語言:一個數除以7餘1,除以8餘2,除以9餘4,這個數最小是多少?(不設定最小會有無數個答案)
大家有沒有發現,除以7餘1,除以8餘2,它們都只差6,如果我們補上一個6,是不是剛好能被7整除,又能被8整除?所以滿足這個條件的數是7和8的最小公倍數56,但是56是怎麼來的呢?是我們加了6之後得到的,所以把它還原回去,它本身就是56-6=50。滿足這個條件的下一個數是50+56。
好了現在滿足兩個數了,然而我們發現50除以9的餘數是5,並不是4,怎麼辦?接下來我們用50加56的倍數除以9。每加一個56,餘數會增加2,變成了餘7了,有人說這餘數都越來越大了?沒錯,不過餘數必須小於除數,超過9之後,需要再除以9,一直到滿足除以9餘4,就是滿足要求的最小的數。
最後經驗證滿足要求的最小的數是:50+56×4=274。這個過程會有一點點麻煩,但思路是這樣,我們無法一下滿足所有條件,那就通過逐個滿足的方法。先找出符合兩個數除數要求的最小的數,然後再去驗算,每次加則是加這兩個數的最小公倍數。
這種題型比較難,也比較麻煩,一般在學了最小公倍數以後會遇到。
轉換是一種思想,將不是很好處理的問題,轉換成我們平常所熟悉的問題。
當然最簡單的就是某個自然數除以幾個不同的自然數,得到的餘數都相同,問這個數最小是多少?
對於這種題有人說答案是:餘數加這幾個數的最小公倍數。其實這種答案並不是最小的,而是第二小的答案。滿足條件最小的數就是這個餘數。
下一篇文章我們會就這個問題進行分析,歡迎關注。