完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。
第一个完全数是6,第二个完全数是28,第三个完全数是496
完全数的判断
#include <stdio.h>
int main ()
{
int i = 0;
int num = 0;
int sum = 0;
scanf("%d",&num);//输入一个数判断是否是完全数
for(i = 1 ; i<num ;i++)
{
if(num % i == 0)
{
sum = sum + i;//因子相加
}
}
if(sum == num )
{
printf("Yes!\n");
}
else
{
printf("N0!\n");
}
return 0;
}
完全数的取值
#include <stdio.h>
int main ()
{
int i = 0;
int j = 0;
int num = 0;
int sum = 0;
scanf("%d",&num);
for(i = 1 ; i < num ;i++)
{
sum = 0;//每次将原来的因子和清零
for(j = 1 ; j < i;j++)
{
if(i%j == 0)
{
sum += j;
}
}
if(sum == i)
{
printf("%d\n",i);//输出完全数
}
}
return 0 ;
}