用Java求出1~1000之间的所有完全数
时间: 2023-05-11 16:01:58 浏览: 255
完全数是指一个数等于它的因子之和,比如6=1+2+3。以下是用Java求解1~1000之间的所有完全数的代码:
```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.println(i);
}
}
}
}
```
输出结果为:
```
6
28
496
```
相关问题
用Java编写程序,求出1~1000之间的所有完全数。完全数是其所有因子(包括1但不包括该数本身)的和等于该数。
以下是用Java编写的程序,可以求出1~1000之间的所有完全数:
```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.println(i);
}
}
}
}
```
这个程序会输出以下6个完全数:
```
6
28
496
```
求1000以内所有的完全数
要求1000以内所有的完全数,可以使用循环遍历1到1000之间的所有整数,对于每个整数,计算它的因子并将它们相加,如果和等于这个整数本身,则这个整数就是完全数。以下是一个Java程序实现:
```
public class PerfectNumber {
public static void main(String[] args) {
System.out.println("1000以内的完全数有:");
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 + " ");
}
}
}
}
```