java 数学上是这样定义“水仙花数”:是指一个3位数,它的各个位数字的立方和等于其本身,比如153=13+53+33。 现在要求输出100到999之间所有的水仙花数。
时间: 2024-09-27 17:09:09 浏览: 21
"水仙花数",也被称为三位完全立方数,是指一个三位整数,其各位数字的立方和等于该数本身。例如,153就是这样一个数,因为1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153。
在Java中,我们可以创建一个简单的循环来找出100到999之间的所有水仙花数。这里是一个示例代码:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
for (int num = 100; num < 1000; num++) {
if (isNarcissistic(num)) {
System.out.println(num);
}
}
}
// 判断一个数是否为水仙花数的函数
private static boolean isNarcissistic(int n) {
int sum = 0;
String number = String.valueOf(n); // 转换为字符串便于取每一位数字
for (char digit : number.toCharArray()) {
sum += Integer.parseInt(String.valueOf(digit)); // 取立方并加总
}
return sum == n;
}
}
```
这个程序会遍历100到999的所有整数,通过`isNarcissistic`函数检查每个数是否满足水仙花数条件,如果是,则打印出来。
阅读全文