java写程序打印出所有的水仙花数。所谓"水仙花数"是指一个三位数,其各位数字立方和等于该本身。例如:153是一个水仙花数,因为153=1^3+5^3+3^3。 输出的数之间用“,”(英文半角的逗号)分割。 输入格式: 无
时间: 2024-09-17 10:03:54 浏览: 23
在Java中,我们可以编写一个简单的循环来找出所有的水仙花数。这里有一个函数`findWaterLilyNumbers()`用于查找并打印所有符合条件的三位数:
```java
public class Main {
public static void main(String[] args) {
int start = 100; // 开始从100检查,因为水仙花数是三位数
int end = 999; // 结束于999
for (int num = start; num <= end; num++) {
if (isWaterLily(num)) {
System.out.print(num + ","); // 打印水仙花数,注意最后的逗号防止连续输出
}
}
}
// 检查一个数是否是水仙花数
public static boolean isWaterLily(int number) {
int sumOfCubes = 0;
String strNum = String.valueOf(number); // 将数字转换为字符串,便于获取每位数字
for (char digit : strNum.toCharArray()) { // 遍历每一位数字
int cube = Character.getNumericValue(digit) * Character.getNumericValue(digit) * Character.getNumericValue(digit);
sumOfCubes += cube;
}
return sumOfCubes == number;
}
}
```
当你运行这个程序,它会打印出所有的水仙花数,如 `153, 370, 371, 407` 等。
阅读全文