當前位置:編程學習大全網 - 編程語言 - 完全數詳細資料大全

完全數詳細資料大全

完全數(Perfect number),又稱完美數或完備數,是壹些特殊的自然數。它所有的真因子(即除了自身以外的約數)的和(即因子函式),恰好等於它本身。如果壹個數恰好等於它的因子之和,則稱該數為“完全數”。第壹個完全數是6,第二個完全數是28,第三個完全數是496,後面的完全數還有8128、33550336等等。

基本介紹 中文名 :完全數 外文名 :Perfect number 別稱 :完美數或完備數 類型 :特殊的自然數 性質1 :所有的完全數都是三角形數 性質2 :可以表示成連續奇立方數之和 定義,特有性質,歷史,疑難問題,計算方法,推導公式,計算機枚舉法,梅森素數,已發現完全數, 定義 如果壹個數恰好等於它的因子之和,則稱該數為“完全數”。各個小於它的約數(真約數,列出某數的約數,去掉該數本身,剩下的就是它的真約數)的和等於它本身的自然數叫做完全數(Perfect number),又稱完美數或完備數。 例如:第壹個完全數是6,它有約數1、2、3、6,除去它本身6外,其余3個數相加,1+2+3=6。第二個完全數是28,它有約數1、2、4、7、14、28,除去它本身28外,其余5個數相加,1+2+4+7+14=28。第三個完全數是496,有約數1、2、4、8、16、31、62、124、248、496,除去其本身496外,其余9個數相加,1+2+4+8+16+31+62+124+248=496。後面的完全數還有8128、33550336等等。 特有性質 (1)所有的完全數都是三角形數。例如:6=1+2+3;28=1+2+3+...+6+7;496=1+2+3+...+30+31;8128=1+2+3…+126+127。 (2)所有的完全數的倒數都是調和數。例如:1/1+1/2+1/3+1/6=2;1/1+1/2+1/4+1/7+1/14+1/28=2;1/1+1/2+1/4+1/8+1/16+1/31+1/62+1/124+1/248+1/496=2。 (3)可以表示成連續奇立方數之和。除6以外的完全數,都可以表示成連續奇立方數之和,並規律式增加。例如:28=1 3 +3^3;496=1^3+3^3+5^3+7^3;8128=1^3+3^3+5^3+……+15^3;33550336=1^3+3^3+5^3+……+125^3+127^3。 (4)都可以表達為2的壹些連續正整數次冪之和。不但如此,而且它們的數量為連續質數。例如:6=2^1+2^2;28=2^2+2^3+2^4;496=2^4+2^5+2^6+2^7+2^8;8128=2^6+2^7+2^8+2^9+2^10+2^11+2^12;33550336=2^12+2^13+……+2^24。 (5)完全數都是以6或8結尾。如果以8結尾,那麽就肯定是以28結尾。(科學家仍未發現由其他數字結尾的完全數。) (6)各位數字輾轉式相加個位數是1。除6以外的完全數,把它的各位數字相加,直到變成個位數,那麽這個個位數壹定是1。例如:28:2+8=10,1+0=1;496:4+9+6=19,1+9=10,1+0=1;8128:8+1+2+8=19,1+9=10,1+0=1;33550336:3+3+5+5+0+3+6=28,2+8=10,1+0=1。 (7)它們被3除余1、被9除余1、1/2被27除余1。除6以外的完全數,它們被3除余1,9除余1,還有1/2被27除余1。28/3 商9余1,28/9 商3余1,28/27 商1余1。496/3 商165余1,496/9 商55余1。8128/3 商2709余1,8128/9 商903余1,8128/27 商301余1。 歷史 公元前6世紀的畢達哥拉斯是最早研究完全數的人,他已經知道6和28是完全數。畢達哥拉斯曾說:“6象征著完滿的婚姻以及健康和美麗,因為它的部分是完整的,並且其和等於自身。”有些《聖經》註釋家認為6和28是上帝創造世界時所用的基本數字,因為上帝創造世界花了六天,二十八天則是月亮繞地球壹周的日數。聖·奧古斯丁說:6這個數本身就是完全的,並不因為上帝造物用了六天;事實上,因為這個數是壹個完全數,所以上帝在六天之內把壹切事物都造好了。 畢達哥拉斯 在中國文化裏:有六谷、六畜、戰國時期的六國、秦始皇以六為國數、六常(仁、義、禮、智、信、孝)、天上四方有二十八宿等等,6和28,在中國歷史長河中,之所以熠熠生輝,是因為它是壹個完全數。難怪生有的學者說,中國發現完全數比西方還早呢。 完全數誕生後,吸引著眾多數學家與業余愛好者像淘金壹樣去尋找。它很久以來就壹直對數學家和業余愛好者有著壹種特別的吸引力,他們沒完沒了地找尋這壹類數字。接下去的兩個完數看來是公元1世紀,畢達哥拉斯學派成員尼克馬修斯發現的,他在其《數論》壹書中有壹段話如下:也許是這樣,正如美的、卓絕的東西是罕有的,是容易計數的,而醜的、壞的東西卻滋蔓不已;是以盈數和虧數非常之多,雜亂無章,它們的發現也毫無系統。但是完全數則易於計數,而且又順理成章:因為在個位數裏只有壹個6;十位數裏也只有壹個28;第三個在百位數的深處,是496;第四個卻在千位數的尾巴頸部上,是8128。它們具有壹致的特性:尾數都是6或8,而且永遠是偶數。但在茫茫數海中,第五個完全數要大得多,居然藏在千萬位數的深處!它是33550336,它的尋求之路也更加撲朔迷離,直到十五世紀才由壹位無名氏給出。這壹尋找完全數的努力從來沒有停止。電子計算機問世後,人們借助這壹有力的工具繼續探索。笛卡爾曾公開預言:“能找出完全數是不會多的,好比人類壹樣,要找壹個完美人亦非易事。”時至今日,人們壹直沒有發現有奇完全數的存在。於是是否存在奇完全數成為數論中的壹大難題。只知道即便有,這個數也是非常之大,並且需要滿足壹系列苛刻的條件。 疑難問題 (1)到底有多少完全數? 答:尋找完全數並不是容易的事。經過不少數學家研究,到2013年2月6日為止,壹***找到了48個完全數。 (2)有沒有奇完全數? 答:奇怪的是,已發現的48個完全數都是偶數,會不會有奇完全數存在呢?如果存在,它必須大於10^300。至今無人能回答這些問題。盡管沒有發現奇完全數,但是當代數學家奧斯丁·歐爾證明,若有奇完全數,則其形式必然是12^p+1或36^p+9的形式,其中p是素數。在10^300以下的自然數中奇完全數是不存在的。 另外,如果存在奇完全數,則它們必能表示p^2*q的形式,除6外的偶完全數亦有此性質。 計算方法 推導公式 大數學家歐拉曾推算出完全數的獲得公式:如果p是質數,且2^p-1也是質數,那麽(2^p-1)X2^(p-1)便是壹個完全數。 例如p=2,是壹個質數,2^p-1=3也是質數,(2^p-1)X2^(p-1)=3X2=6,是完全數。 例如p=3,是壹個質數,2^p-1=7也是質數,(2^p-1)X2^(p-1)=7X4=28,是完全數。 例如p=5,是壹個質數,2^p-1=31也是質數,(2^p-1)X2^(p-1)=31X16=496是完全數。 但是2^p-1什麽條件下才是質數呢?事實上,當2^p-1是質數的時候,稱其為梅森素數。到2013年2月6日為止,人類只發現了48個梅森素數,較小的有3、7、31、127等。 計算機枚舉法 例如: (1)利用VB編程求10000以內完全數。 Dim?a?as?Integer,b?as?Integer,c?as?IntegerFor?a?=?1?To?10000c?=?0For?b?=?1?To?a?\?2If?a?Mod?b?=?0?Then?c?=?c?+?bNext?bIf?a?=?c?Then?Print?Str(a)Next?a (2)利用C語言編程求1000以內完全數。 #include?"stdio.h"void?main(){int?j,k,sum?=?0;for(k=2;k<=1000;k++){sum=0;for(j=1;j<k;j++)if(k%j==0)sum=sum+j;if(sum==k)printf("%d?",k);}} (3)利用java語言編程求1000以內完全數。 public?class?PerfectNumber?{public?static?void?main(String[]?args){for(int?i=2;i<1000;i++){int?sum=0;查找因數for(int?j=1;j<i;j++){if(i?%?j==0){sum?+=?j;}if(sum==i)System.out.println(i);}}} (4)利用JavaScript語言編程求N以內完全數。 function?perfectNumber(N){var?nums?=?[],?sum,?i,?j;0除以任意數都是0,所以從1開始for?(i?=?0;?i?<=?N;?i++){sum?=?0完全數除以自己壹半,求余肯定會大於0,所以用i/2for(j?=?1;?j?<=?i/2;?j++){if?(i?%?j?===?0){sum?+=?j;}}if?(sum?===?i){nums.push(i);}}return?nums;} 梅森素數 古希臘數學家歐幾裏得在名著《幾何原本》中證明了素數有無窮多個,並論述完全數時提出:如果2^P-1是素數(其中指數P也是素數),則2^(P-1)(2^P-1)是完全數。瑞士數學家和物理學家歐拉證明所有的偶完全數都有這種形式。因此,人們只要找到2^P-1型素數,就可以發現偶完全數了。數學界將2^P-1型素數稱為“梅森素數”(Mersenne prime),因為法國數學家和法蘭西科學院奠基人梅森在這方面的研究成果較為卓著。梅森素數貌似簡單,但探究難度卻極大。它不僅需要高深的理論和純熟的技巧,而且還需要進行艱巨的計算。到2013年2月6日為止,人類僅發現48個梅森素數。 值得提出的是:在梅森素數的基礎研究方面,法國數學家魯卡斯和美國數學家雷默都做出了重要貢獻;以他們命名的“魯卡斯-雷默方法”是目前已知的檢測梅森素數素性的最佳方法。此外,中國數學家和語言學家周海中給出了梅森素數分布的精確表達式,為人們尋找梅森素數提供了方便;這壹研究成果被國際上命名為“周氏猜測”。 梅森素數表如圖所示。 已發現完全數 1……6 2……28 3……496 4……8,128 5……33,550,336 6……8,589,869,056 7……137,438,691,328 8……2,305,843,008,139,952,128 9……2,658,455,991,569,831,744,654,692,615,953,842,176 10……191,561,942,608,236,107,294,793,378,084,303,638,130,997,321,548,169,216 11……13,164,036,458,569,648,337,239,753,460,458,722,910,223,472,318,386,943,117,783,728,128 12……14,474,011,154,664,524,427,946,373,126,085,988,481,573,677,491,474,835,889,066,354,349,131,199,152,128 …… …… 47 ……2^42643800 X (2^42643801-1) 48 ……2^57885160 X (2^57885161-1) 由於後面數字位數較多,例子只列到12個,第13個有314位。 到第39個完全數有25674127位數,據估計它以四號字打出時需要壹本字典大小的書。

  • 上一篇:公眾號運營01:教妳如何生成漂亮的關鍵詞雲圖
  • 下一篇:C語言程序設計實驗報告怎麽寫啊
  • copyright 2024編程學習大全網