|
|
#include <stdio.h>
#include <conio.h>
/*
判断 n 完数 : 除了它本身外的所有的因子的和 等于 它本身。
完数 :6 = 1 +2 + 3 ; 28 = 1 + 2 + 4 + 7 + 14
非完数 : 4,8,9....
m = 1;
判断完数算法: 用 i = 2 --> n-1 除 n, 如果可以 整除 ,;累加 i 到 累加变量 m;
if( m == n)
*/
int main()
{
int n;
int i=2;
int m=1;
printf("input n please:");
scanf("%d",&n);
if(n <= 1)
{
printf("n >= 2");
return 0;
}
while(i <= n-1)
{
if( n % i == 0)//
m = m+ i;; //
i++;
}
if(m == n) //
printf("%d 是完数\n",n);
else
printf("%d 不是完数\n",n);
return 0;
} |
|