使用Java解决:描述 输入一个三位数n, 输出所有小于等于n的水仙花数。每行一个符合条件的水仙花数
时间: 2024-10-24 16:14:50 浏览: 28
输出所有在m和n范围内的水仙花数.cpp
5星 · 资源好评率100%
在Java中,水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。
要解决这个问题,你可以编写一个程序,遍历从100到给定的三位数n之间的每一个整数,然后检查每个数是否满足水仙花数的条件。以下是一个简单的Java函数来实现这个功能:
```java
public class NarcissisticNumber {
public static void findNarcissisticNumbers(int n) {
for (int num = 100; num <= n; num++) {
if (isNarcissistic(num)) {
System.out.println(num);
}
}
}
// 检查一个数是否是水仙花数
private static boolean isNarcissistic(int number) {
int sum = 0;
String strNum = Integer.toString(number);
for (char digit : strNum.toCharArray()) {
sum += Math.pow(Integer.parseInt(String.valueOf(digit)), 3);
}
return sum == number;
}
public static void main(String[] args) {
int inputNum = 1000; // 输入你想要查找的三位数
findNarcissisticNumbers(inputNum);
}
}
```
在这个程序中,`findNarcissisticNumbers`函数会打印出所有小于等于输入值n的水仙花数。将`inputNum`变量设置为你需要的三位数范围即可。
阅读全文