C 语言 经典例题一百道 一个数如果恰好等于他的因子之和,这个数称为为“完数”。例如 6 = 1 + 2 +3,编程找出1000以内的完数。

方法一:

#include 
int main()
{
	int i,j,sum = 0 ;
	
	for (i = 2 ; i <= 1000 ; i++)   // 放入一千个数检验是否是完数。
	{
		for(j = 1; j < i ; j++)     // i 除以 从 2 开始 到(i-1)。
		{
			if ( i % j == 0 )       // 若 i 能被 j 整除 ,则 j 就是 i 的因子。
			{
				sum = sum + j ;     // 累加因子。
			}
		}

		if ( sum == i )
		{
			printf("%d \n",i) ;
		}
		
		sum = 0 ;
	}

	return 0 ;
	
}

C 语言 经典例题一百道 一个数如果恰好等于他的因子之和,这个数称为为“完数”。例如 6 = 1 + 2 +3,编程找出1000以内的完数。_第1张图片

总结:

        完数的概念,完数 = 所有能整除自己数相加(除了自己不能整除做自己)

       

你可能感兴趣的:(C 语言 经典例题一百道 一个数如果恰好等于他的因子之和,这个数称为为“完数”。例如 6 = 1 + 2 +3,编程找出1000以内的完数。)