题目:完数的定义:如果一个数等于其所有因子之和,我们就称这个数为"完数",
如6的因子为1,2,3 6 = 1 + 2 + 3,那么6就是一个完数。
代码如下:
package com.jsu.domo1;
public class PerfectNumber {
public static void main(String[] args) {
//1.循环遍历1000以内的所有数
for(int i=1;i<=1000;i++){
//2.定义一个变量来保存求和的结果
int sum = 0;
//3.求i的因子
for(int j=1;j<=i/2;j++){
//4.判断是否能被整除.如果能整除,就是因子,因子需要累加
if(i % j == 0){
sum+=j;
}
}
//5.如果因子累加之和恰好为本轮的数,则该数是完数,进行输出
if(sum==i){
System.out.println(i);
}
}
}
}
运行结果为:
注意理解完数的定义!