2797 - 找完数

通过次数

0

提交次数

0

时间限制 : 1 秒 内存限制 : 128 MB

完数是指除本身以外的因子之和等于其本身的数。

任给一个自然数n,求n以内的所有完数。如果找不到,则输出"No"

题目输入

一行:一个整数n. (0<n<10000)

题目输出

有若干行:每一行一个完数。如果没有完数,则输出No

输入/输出样例

输入格式

10

输出格式

6

Java解答

import java.util.Scanner;

class  Main
{
	public static void main(String[] args) 
	{
        Scanner in =new Scanner(System.in);

		int a=in.nextInt();

		wanshu(a);

	}
	
    public static void wanshu(int a)
	{
		int Sum=0;
		for(int b=2;b<=a;b++)
		{
			int sum=0;
			for(int i=1;i<=b/2;i++)
			{
				if(b%i==0)
					sum=sum+i;
			}
			if(sum==b)
			{
				System.out.println(b);
				Sum++;
			}
		}

		if(Sum==0)
			System.out.println("No");
			
	}



}