用Java写一个编写一个控制台应用程序,接收一个三位数(如果不是三位数,提示输入错误后重新接收),输出从0至该数中所有的完美数。完美数是指一个数恰好等于它的所有因子之和。
时间: 2023-07-15 22:13:54 浏览: 76
以下是Java代码实现:
```java
import java.util.Scanner;
public class PerfectNumbers {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int num = 0;
while (true) {
System.out.print("请输入一个三位数:");
num = input.nextInt();
if (num >= 100 && num <= 999) {
break;
} else {
System.out.println("输入错误,请重新输入!");
}
}
System.out.println("0至" + num + "中的所有完美数如下:");
for (int i = 1; i <= num; i++) {
int sum = 0;
for (int j = 1; j <= i / 2; j++) {
if (i % j == 0) {
sum += j;
}
}
if (sum == i) {
System.out.print(i + " ");
}
}
}
}
```
运行后,控制台会提示输入一个三位数。如果输入错误,则会重新提示输入。如果输入正确,则会输出从0至该数中的所有完美数。
相关推荐
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)