10 怪数

10 怪数

作者: Turbo时间限制: 1S章节: 循环

问题描述 :

寻找怪数:有一种奇怪的自然数,它的比其本身小的所有因子之和等于它本身,例如:6=1+2+3,其中1、2、3都是6的因子,编程找出整数N之内的所有怪数。

输入说明 :

输入一个整数N(10<=N≤10000),在行首和行尾没有多余的空格。

输出说明 :

输出N之内(<=N)的所有怪数,每一行输出一个整数。(注:若N中有3个怪数,你则需要输出三行,每行一个怪数。)所有数据前后没有多余的空格,中间也没有多余的空行。

输入范例 :

28

输出范例 :

6
28
 

#include <stdio.h>

int main()
{
	int n,num,i,sum,j;
	int *store;
	while( scanf("%d",&n) != EOF )
	{
		num=0;
		j=1;
		while(j<=n)
		{
			sum=0;
			for(i=1;i<=j;i++)
			{
				if(j%i==0 && i<j)
					sum+=i;
			}
			if(sum==j)
				printf("%d\n",j);
			j++;
		}
	}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/HurryBen/article/details/105731473
今日推荐