循环练习:一个数如果 恰好等于它的因子之惋,这个数就称为“完数”。如,6的因子为1,2,3,而6=1+2+3,因此6是完数。变成找出1000以内的所有完数,输出每个完数时还需输出该完数和因子。如:6是完数,因子有1 2 3,请用JAVA输出
时间: 2023-09-03 22:10:56 浏览: 65
以下是求解1000以内完数的Java代码:
```java
public class PerfectNumber {
public static void main(String[] args) {
for (int i = 1; i <= 1000; i++) {
int sum = 0;
for (int j = 1; j < i; j++) {
if (i % j == 0) {
sum += j;
}
}
if (sum == i) {
System.out.print(i + "是完数,因子有");
for (int j = 1; j < i; j++) {
if (i % j == 0) {
System.out.print(j + " ");
}
}
System.out.println();
}
}
}
}
```
输出结果为:
```
6是完数,因子有1 2 3
28是完数,因子有1 2 4 7 14
496是完数,因子有1 2 4 8 16 31 62 124 248
```
阅读全文