當前位置:編程學習大全網 - 編程軟體 - vb中 ,從鍵盤上輸入任壹正整數n,判斷該數是否是完全數。如果壹個數的所有因子和正好等

vb中 ,從鍵盤上輸入任壹正整數n,判斷該數是否是完全數。如果壹個數的所有因子和正好等

#include <stdio.h>

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個完全數。

  • 上一篇:如何評價《了不起的挑戰》第十期
  • 下一篇:VS2005用MFC制作壹個菜單,怎樣單擊菜單選項後彈出對話框
  • copyright 2024編程學習大全網