编程查找答案

来源:百度知道 编辑:UC知道 时间:2024/05/11 01:13:21
完全数是指该数的所有因子之和等于它自身的数。例如6是完全数(1+2+3),28也是完全数(1+2+4+7+14)。28之后的下一个完全数相当大,手工计算比较难求。试给出一个算法,判断一个整数是否为完全数
恩。。不好意思可以用C++做吗??

给出c程序.

#include<stdio.h>
#include<stdlib.h>

int main()
{
int i,n,sum=0;/*定义整形数据n */
scanf("%d",&n);/*输入数据*/
for(i=1;i<=n/2;i++)
if(n%i==0)/*i是n的因子*/
sum+=i;/*求因子的和*/
if(sum==n)
printf("Yes!\n");
else
printf("No!\n");
system("PAUSE");
return 0;
}

晕死
不是真要算吧?
这东西可比质数还难算啊

楼上的算法好像可行

但是个人以为应该加入更多的限制
当然这些限制要数学家给出来才行了

比如我听说有数学家寻找第N个完全数的时候找到了该完全数的前三位数字