100000000以内的完全数

注意:要准确!

关于完全数的一个猜想及其证明
刘士杰 杨锡伟 项以江
(无锡市大桥实验中学214001)

在茫茫数字世界中,有这么一种奇妙的数:如果一个自然数除自身之外的所有因数之和等于它本身,这个数就叫做完全数.这样的数有几个,该怎样求解?就这个问题,1718年,小欧拉曾向约翰•伯努利请教,当时并未得解.如今我们借助计算机初步揭开了它神秘的面纱.
我们先借助计算机用穷举法来找这样的数,用Pascal语言代码找出100000000内的完全数,代码如下:
var n,i,s,j:longint;
begin
for j:=1 to 100000000 do
begin
s:=1;{加上因数1}
for i:=2 to trunc(sqrt(j)) do
if (j mod i)=0
then s:=s+i+(j div i);
if j=s then
writeln(j);
end;
end.
我们总共找到5个完全数:6,28,496,8128,33550336.乍一看,完全数相互之间并没有明显的关系,完全数真的是毫无规律可言吗?在毫无头绪中,让我们先来试着分解一下完全数的质因数:6=2×3,28=22×7,496=24×31,8128=26×127,33550336=212×8191.进而发现3=221,7=231,31=251,127=271, 8191=2131.对照两组数据:
6=2×3 3=221
28=22×7 7=231
496=24×31 31=251
8128=26×127 127=271
33550336=212×8191 8191=2131
很自然,我们可以有如下猜想:
(2n)×(2n+11) =完全数
但是,对照上式,发现当n=3和5时所得出的120与2016不是完全数,分析发现此时2n+11为合数15、63,而n=1,2,4,6时2n+11为质数.于是我们对上式作如下修正:(2n)×(2n+1-1)=完全数,其中n为自然数(n≠0),且2n+1-1为质数.
这个猜想合理吗?可以证明吗?是的.证明如下:
令(2n)×(2n+11) =完全数x,(此时2n+11为质数),它除自身之外的所有因数之和为

=(1+2+22+…+2n)+ ( )
=2n+11+x×( )
=2n+11+ x
将 中的x用x=(2n)×(2n+11)代入,则:
原式=2n+11+ x(2n+11)
=x.
证明到此为止,并不复杂.
若2n+11为合数,则因数不止这些,所以120与2016不是完全数.于是, 通过100000000内完全数的探求,我们可以得到完全数的一个形式:
当n为自然数(n≠0),且2n+11为质数时,(2n)×(2n+11)=完全数.
囿于目前的知识水平,我们还没有证明:只要是完全数,就一定符合(2n)×(2n+11)的形式(其中n为自然数(n≠0),且2n+11为质数),在此我们大胆作出如下猜想:
完全数=(2n)×(2n+11),其中n为自然数(n≠0),且2n+11为质数.
同样地,我们验证这个猜想的设想是:用穷举法找出完全数,看是否存在反例.遗憾的是在具体操作时遇到了困难:我们的个人计算机没有这么强的运算能力,相信这个问题不难得到解决.

附录
附录是我们修改了程序代码,试图能找出多一点的完全数,一直找到n=15, (2n)×(2n+11)=2147450880时,也未有新的完全数.
Pascal程序代码:
var i,j,n,s,s1,k:longint;
f:text;
begin
assign(f,'d:\wq.txt');
rewrite(f);
j:=1;
for i:=1 to 15 do
begin
j:=j*2;
s:=j*(j*2-1);
s1:=1;
for n:=2 to trunc(sqrt(s)) do
if s mod n =0 then s1:=s1+n+s div n;
if s=s1 then
begin
writeln(f,'n=',i,':');
write(f,s,'=');
write(f,2,'(',i,')','*','(',2,'(',i+1,')','-1)=',j,'*',j*2-1);
writeln(f);writeln(f);
end
else
begin
writeln(f,'n=',i,':');
write(f,s,'=');write(f,2,'(',i,')','*','(',2,'(',i+1,')');
write(f,'-',1,')','<','>',1,'+');
n:=trunc(sqrt(s));
while s mod n<>0 do n:=n-1;
for k:=2 to n-1 do
if s mod k=0 then write(f,k,'+',s div k,'+');
write(f,n,'+',s div n);
writeln(f);writeln(f);
end;
end;
close(f);
end.

程序输出结果:
n=1:
6=2(1)*(2(2)-1)=2*3

n=2:
28=2(2)*(2(3)-1)=4*7

n=3:
120=2(3)*(2(4)-1)<>1+2+60+3+40+4+30+5+24+6+20+8+15+10+12

n=4:
496=2(4)*(2(5)-1)=16*31

n=5:
2016=2(5)*(2(6)-1)<>1+2+1008+3+672+4+504+6+336+7+288+8+252+9+224+12+168+14+144+16+126+18+112+21+96+24+84+28+72+32+63+36+56+42+48

n=6:
8128=2(6)*(2(7)-1)=64*127

n=7:
32640=2(7)*(2(8)-1)<>1+2+16320+3+10880+4+8160+5+6528+6+5440+8+4080+10+3264+12+2720+15+2176+16+2040+17+1920+20+1632+24+1360+30+1088+32+1020+34+960+40+816+48+680+51+640+60+544+64+510+68+480+80+408+85+384+96+340+102+320+120+272+128+255+136+240+160+204+170+192

n=8:
130816=2(8)*(2(9)-1)<>1+2+65408+4+32704+7+18688+8+16352+14+9344+16+8176+28+4672+32+4088+56+2336+64+2044+73+1792+112+1168+128+1022+146+896+224+584+256+511+292+448

n=9:
523776=2(9)*(2(10)-1)<>1+2+261888+3+174592+4+130944+6+87296+8+65472+11+47616+12+43648+16+32736+22+23808+24+21824+31+16896+32+16368+33+15872+44+11904+48+10912+62+8448+64+8184+66+7936+88+5952+93+5632+96+5456+124+4224+128+4092+132+3968+176+2976+186+2816+192+2728+248+2112+256+2046+264+1984+341+1536+352+1488+372+1408+384+1364+496+1056+512+1023+528+992+682+768+704+744

n=10:
2096128=2(10)*(2(11)-1)<>1+2+1048064+4+524032+8+262016+16+131008+23+91136+32+65504+46+45568+64+32752+89+23552+92+22784+128+16376+178+11776+184+11392+256+8188+356+5888+368+5696+512+4094+712+2944+736+2848+1024+2047+1424+1472

n=11:
8386560=2(11)*(2(12)-1)<>1+2+4193280+3+2795520+4+2096640+5+1677312+6+1397760+7+1198080+8+1048320+9+931840+10+838656+12+698880+13+645120+14+599040+15+559104+16+524160+18+465920+20+419328+21+399360+24+349440+26+322560+28+299520+30+279552+32+262080+35+239616+36+232960+39+215040+40+209664+42+199680+45+186368+48+174720+52+161280+56+149760+60+139776+63+133120+64+131040+65+129024+70+119808+72+116480+78+107520+80+104832+84+99840+90+93184+91+92160+96+87360+104+80640+105+79872+112+74880+117+71680+120+69888+126+66560+128+65520+130+64512+140+59904+144+58240+156+53760+160+52416+168+49920+180+46592+182+46080+192+43680+195+43008+208+40320+210+39936+224+37440+234+35840+240+34944+252+33280+256+32760+260+32256+273+30720+280+29952+288+29120+312+26880+315+26624+320+26208+336+24960+360+23296+364+23040+384+21840+390+21504+416+20160+420+19968+448+18720+455+18432+468+17920+480+17472+504+16640+512+16380+520+16128+546+15360+560+14976+576+14560+585+14336+624+13440+630+13312+640+13104+672+12480+720+11648+728+11520+768+10920+780+10752+819+10240+832+10080+840+9984+896+9360+910+9216+936+8960+960+8736+1008+8320+1024+8190+1040+8064+1092+7680+1120+7488+1152+7280+1170+7168+1248+6720+1260+6656+1280+6552+1344+6240+1365+6144+1440+5824+1456+5760+1536+5460+1560+5376+1638+5120+1664+5040+1680+4992+1792+4680+1820+4608+1872+4480+1920+4368+2016+4160+2048+4095+2080+4032+2184+3840+2240+3744+2304+3640+2340+3584+2496+3360+2520+3328+2560+3276+2688+3120+2730+3072+2880+2912

n=12:
33550336=2(12)*(2(13)-1)=4096*8191

n=13:
134209536=2(13)*(2(14)-1)<>1+2+67104768+3+44736512+4+33552384+6+22368256+8+16776192+12+11184128+16+8388096+24+5592064+32+4194048+43+3121152+48+2796032+64+2097024+86+1560576+96+1398016+127+1056768+128+1048512+129+1040384+172+780288+192+699008+254+528384+256+524256+258+520192+344+390144+381+352256+384+349504+508+264192+512+262128+516+260096+688+195072+762+176128+768+174752+1016+132096+1024+131064+1032+130048+1376+97536+1524+88064+1536+87376+2032+66048+2048+65532+2064+65024+2752+48768+3048+44032+3072+43688+4064+33024+4096+32766+4128+32512+5461+24576+5504+24384+6096+22016+6144+21844+8128+16512+8192+16383+8256+16256+10922+12288+11008+12192

n=14:
536854528=2(14)*(2(15)-1)<>1+2+268427264+4+134213632+7+76693504+8+67106816+14+38346752+16+33553408+28+19173376+31+17317888+32+16776704+56+9586688+62+8658944+64+8388352+112+4793344+124+4329472+128+4194176+151+3555328+217+2473984+224+2396672+248+2164736+256+2097088+302+1777664+434+1236992+448+1198336+496+1082368+512+1048544+604+888832+868+618496+896+599168+992+541184+1024+524272+1057+507904+1208+444416+1736+309248+1792+299584+1984+270592+2048+262136+2114+253952+2416+222208+3472+154624+3584+149792+3968+135296+4096+131068+4228+126976+4681+114688+4832+111104+6944+77312+7168+74896+7936+67648+8192+65534+8456+63488+9362+57344+9664+55552+13888+38656+14336+37448+15872+33824+16384+32767+16912+31744+18724+28672+19328+27776

n=15:
2147450880=2(15)*(2(16)-1)<>1+2+1073725440+3+715816960+4+536862720+5+429490176+6+357908480+8+268431360+10+214745088+12+178954240+15+143163392+16+134215680+17+126320640+20+107372544+24+89477120+30+71581696+32+67107840+34+63160320+40+53686272+48+44738560+51+42106880+60+35790848+64+33553920+68+31580160+80+26843136+85+25264128+96+22369280+102+21053440+120+17895424+128+16776960+136+15790080+160+13421568+170+12632064+192+11184640+204+10526720+240+8947712+255+8421376+256+8388480+257+8355840+272+7895040+320+6710784+340+6316032+384+5592320+408+5263360+480+4473856+510+4210688+512+4194240+514+4177920+544+3947520+640+3355392+680+3158016+768+2796160+771+2785280+816+2631680+960+2236928+1020+2105344+1024+2097120+1028+2088960+1088+1973760+1280+1677696+1285+1671168+1360+1579008+1536+1398080+1542+1392640+1632+1315840+1920+1118464+2040+1052672+2048+1048560+2056+1044480+2176+986880+2560+838848+2570+835584+2720+789504+3072+699040+3084+696320+3264+657920+3840+559232+3855+557056+4080+526336+4096+524280+4112+522240+4352+493440+4369+491520+5120+419424+5140+417792+5440+394752+6144+349520+6168+348160+6528+328960+7680+279616+7710+278528+8160+263168+8192+262140+8224+261120+8704+246720+8738+245760+10240+209712+10280+208896+10880+197376+12288+174760+12336+174080+13056+164480+13107+163840+15360+139808+15420+139264+16320+131584+16384+131070+16448+130560+17408+123360+17476+122880+20480+104856+20560+104448+21760+98688+21845+98304+24576+87380+24672+87040+26112+82240+26214+81920+30720+69904+30840+69632+32640+65792+32768+65535+32896+65280+34816+61680+34952+61440+40960+52428+41120+52224+43520+49344+43690+49152
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-01-17
6
28
496
8128
130816
2096128
33550336
536854528
8589869056本回答被提问者采纳
第2个回答  2009-01-15
6
28
496
8128
130816
2096128
33550336
536854528