5. “水仙花数”是一个三位数,其各位数字的立方和等于该数本身。编写程序实现以下功能:输出所的水仙花数。 注:获得一个三位数x的个位数字:x%10;十位数字:x/10%10;百位数x/100java
时间: 2024-10-06 14:05:10 浏览: 30
在Java中,你可以创建一个函数来检查并输出所有的水仙花数。以下是一个简单的示例:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
for (int i = 100; i < 1000; i++) { // 只考虑三位数
if (isNarcissistic(i)) {
System.out.println(i); // 如果是水仙花数,则打印出来
}
}
}
// 检查一个数是否为水仙花数
public static boolean isNarcissistic(int num) {
int ones = num % 10;
int tens = (num / 10) % 10;
int hundreds = num / 100;
return num == calculateSumOfCubes(ones, tens, hundreds);
}
// 计算一个数各位数字的立方和
private static int calculateSumOfCubes(int a, int b, int c) {
return Math.pow(a, 3) + Math.pow(b, 3) + Math.pow(c, 3);
}
}
```
在这个程序中,`main`函数从100到999遍历每个三位数,如果遇到满足条件的数(即其各位数字的立方和等于它自身),就调用`isNarcissistic`方法进行验证,并在验证通过时输出这个数。
阅读全文