您的位置:首页 > 其它

判断 n 以内的完全数有多少个!

2016-01-10 12:50 351 查看
//如果一个数恰好等于它的因子之和,则称该数为“完全数”。
import java.util.Scanner;

public class Seven {

public static void main(String[] args) {
// TODO Auto-generated method stub
int a = 10000;

compNumber(a);
}

//判断 n 以内的完全数有多少个!
public static void compNumber(int n) {
int count = 0;
System.out.println(n + "以内的完数有:");
for(int i=1;i<n+1;i++) {
int sum = 0;
for(int j=1;j<i/2+1;j++) {
if((i%j) == 0){
sum += j;
}
}
//把if(sum == i)从第二个循环拿出来,不然会出现因子还没完全加完,但是等于i就把结果也输出来,例如24,当1+2+3+4+6+8=24时,24被打出来,但后面还有个12没加,会造成程序逻辑错误!
if(sum == i){
System.out.print(i + " ");
count ++;
if(count%5 == 0)
System.out.println();

}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: