用編程助你學數學之一--從完全數開始

用編程助你學數學之一--從完全數開始

來自專欄少兒創客5 人贊了文章

馬上要讀二年級的小蘋果在讀暑假作業中的一本《奇妙的數王國》,突然問到:「爸爸,什麼是完全數?這一段有點看不懂。」

爸:「奇數偶數你已經知道了吧?」

蘋果:「是的,能被2整除的數就是偶數,不能被2整除的是奇數。」

爸:「對的,如果一個數能被2整除,那麼就可以說2是這個數的約數(因數)。」

如果一個數能被3整除,那麼3就是這個數的約數。

再進一步,如果一個數a,能被另一個數b整除,那麼就稱b為a的約數,這就是約數的概念。

要想知道一個數是不是完全數,需要計算這個數的約數和,也就是這個數所以約數加起來的值,包括1(因為1可以整除任何整數),但不包括自己。

舉例:

4的約數和:1+2=3

6的約數和:1+2+3=6

看到了嗎?6的約數和剛好等於6,那麼就稱6為完全數。

最早研究完全數的是古希臘數學家畢達哥拉斯,他認為完全數象徵著完美的婚姻和健康美麗,是一個完美的數,他還發現28也是個完全數。

1+2+4+7+14=28

蘋果:「明白了,那我來找找還有沒有別的完全數。」

10的約數和:1+2+5=8

12的約數和:1+2+3+4+6=16

15的約數和:1+3+5=9

這些數的約數和,有些比自身大,有些比自身小,要想成為一個完全數,到底有多難?我還是沒有一個大的概念,完全數很多嗎?很常見嗎?最小的完全數有哪些?怎麼把它們找出來?

如果一個個按順序去算他們的約數和,那得算到什麼時候?找哥哥幫忙一下吧。

六年級的哥哥是個編程高手了,很快就用scratch編了一個程序,用來尋找10000以內的完全數。

運行結果令小蘋果驚訝,10000以內,居然只有4個完全數,6,28,496,8128

原來完全數這麼珍貴啊,要實現完美真的不容易。

第5個完全數,就要到33550336了。看來不用程序是很難找到的了。

編程正是用來解決生活中問題的極好方法。

書里還提到了相親數,這也是畢達哥拉斯首先發現的。

所謂相親數,是指一對數,它們的約數和分別等於對方的值,意味著兩者親密的友情,比如220和284

220的約數和為:1+2+4+5+10+11+20+22+44+55+110=284

284的約數和為 :1+2+4+71+142=220

這樣的相親數多嗎?它們都是哪些?怎麼找到它們?

蘋果:「哥哥,你再編一個程序吧!」

哥哥:「好......吧」

知乎專欄:少兒創客


推薦閱讀:

TAG:少兒編程 | 數學 | 創客 |