新手求教求完全数的问题
各位前辈,哪位可以给个完整的程序参考下?
import java.util.Scanner;public class PerfectNumber{
//判断数num是否为perfect数
public static boolean isPerfect(int num){
int sum =0;
for(int n=1;n<num;n++) if(num%n==0) sum += n;
return (sum==num);
}
public static void main(String[] args){
for(int n =1;n<=1000;n++) if(isPerfect(n)) System.out.println(n);
}
}
完全数也叫完美数
比如6 28
就是它们的真因数之和等于它们本身
1+2+3=6
1+2+4+7+14=28
我用我的机器算,算了5分钟也只算出了4个
6 28 496 8128