题目内容:
一个正整数的因子是所有可以整除它的正整数。而一个数如果恰好等于除它本身外的因子之和,这个数就称为完数。例如6=1+2+3(6的因子是1,2,3)。
现在,你要写一个程序,读入两个正整数n和m(1<=n
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
int n = scan.nextInt();
int m = scan.nextInt();
int sum =0;
int cnt = 0;
for( ; n<=m ;n++)
{
if(Pnum(n))
{
if(cnt!=0)
System.out.print(" ");
System.out.print(n);
cnt ++;
}
}
if(cnt==0)
{
System.out.print("NIL");
}
}
private static boolean Pnum(int n) {
int sum =0;
boolean p =false;
for(int i=1; i<n;i++)
{
if(n%i==0)
{
sum +=i;
}
}
if(n==sum)
{
p = true;
}
return p;
}
}