public class Test {
public static void main(String[] args) {
// 第一层循环打印1000以内的数
for (int i = 1; i <= 1000; i++) {
// 定义保存因子之和的数
int flag = 0;
// 第二层循环列出所有的被除数
for (int m = 1; m < i; m++) {
// 如果他们的余数为0则将所有的被除数相加,结果保存起来
if (i % m == 0) {
// 相加所有被除数
flag += m;
}
}
// 判断如果被除数的和等于除数,则打印
if (flag == i) {
System.out.println(i);
}
}
}
}
题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3。编程找出1000以内的所有完数。
最新推荐文章于 2022-05-05 00:22:57 发布