正整数的因子、完数
一个正整数的因子是所有可以整除它的正整数。而一个数如果恰好等于除它本身外的因子之和,这个数就称为完数。例如6=1+2+3(6的因子是1,2,3)。
要求:
- 输入两个正整数n和m,以空格分隔,范围是[1<=n<m<1000];
- 输出[n,m]范围内所有完数,以空格分隔,最后一个数字后面没有空格。如果没有,则输出一个空行。
思路:
- 判断一个数是否是完数的函数
- in.nextInt()
1 10 | 6 |
1 5 | 空行 |
1 500 | 6 28 496 |
import java.util.Scanner;
public class hello {
//判断一个数是否为完数的函数
public static boolean isPerfect(int a)
{
int sum = 0;
boolean isperfect = false;
for(int i=1;i<a;i++)
{
if(a%i==0) //可以整除
{
sum = sum + i;
}
}
if(sum==a)
{
isperfect = true