Int main()
{
int i,j,k,n,sum;
for(i=2;i<=n;j=i++)
{
for(k=2,sum=0;k<j;k++)
{
if(j%k==0)
sum+=k;
}
if(sum==i)
printf("%d\n",i);
return 0;
}
}
完全數就是它除了本身以外的因數和等於其本身。
6,28,496,8128,33550336……都是完全數
公式:如果有壹個自然數n,符合(2的n次方-1)是質數,那麽(2的n次方-1)*(2的n次方)/2是完全數。
歷史
大數學家歐幾裏德曾推算出完全數的獲得公式:如果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,是完全數。
但是2^p-1什麽條件下才是質數呢?
事實上,當2^p-1是質數的時候,稱其為梅森素數。至今,人類只發現了47個梅森素數,也就是只發現了47個完全數。