用Java语言,编写方法判断一个数是否是水仙花数。水仙花数是指个位、十位和百位三个数的立方和等于这个三位数本身的数,在main方法中调用该方法打印输出所有的水仙花数
时间: 2024-10-14 18:13:42 浏览: 54
在Java中,我们可以编写一个名为`isNarcissisticNumber`的方法来检查一个数是否是水仙花数。这个方法首先将输入的数转换为字符串,然后分别获取每一位的数字,并计算其立方和。如果立方和等于原数,则说明它是水仙花数。下面是一个示例:
```java
public class Main {
public static void main(String[] args) {
for (int i = 100; i <= 999; i++) { // 检查100到999之间的所有三位数
if (isNarcissisticNumber(i)) {
System.out.println(i + " 是水仙花数");
}
}
}
/**
* 判断一个数是否是水仙花数
*/
public static boolean isNarcissisticNumber(int number) {
String str = String.valueOf(number);
int length = str.length();
int sum = 0;
for (int i = 0; i < length; i++) {
int digit = Character.getNumericValue(str.charAt(i)); // 获取每一位数字
sum += Math.pow(digit, length); // 立方和
}
return sum == number;
}
}
```
在这个程序中,我们在主方法里循环遍历100到999的所有三位数,对每一个数调用`isNarcissisticNumber`方法。如果返回true,就表示这个数是水仙花数,会被打印出来。
阅读全文