编写方法判断一个数是否是水仙花数。水仙花数是指个位、十位和百位三个数的立方和等于这个三位数本身的数,在main方法中调用该方法打印输出所有的水仙花数
时间: 2024-09-22 07:06:12 浏览: 61
python输入一个水仙花数(三位数) 输出百位十位个位实例
编写一个Java方法判断一个数是否为水仙花数,可以按照以下步骤:
```java
public class NarcissisticNumber {
public static boolean isNarcissistic(int number) {
if (number < 100 || number > 999) {
return false; // 水仙花数范围在100到999之间
}
int digits[] = new int[3];
String numStr = String.valueOf(number);
for (int i = 0; i < 3; i++) {
digits[i] = Integer.parseInt(numStr.charAt(i) + "");
}
int sum = Math.pow(digits[0], 3) + Math.pow(digits[1], 3) + Math.pow(digits[2], 3);
return sum == number;
}
public static void main(String[] args) {
for (int i = 100; i <= 999; i++) {
if (isNarcissistic(i)) {
System.out.println(i); // 打印出所有的水仙花数
}
}
}
}
```
在这个程序中,我们首先检查输入的数字是否在100到999范围内,因为水仙花数仅限于三位数。然后将数字转换成字符串并分割成各个位数组,计算每个位数的立方和,最后比较这个和是否与原数相等。
在`main`方法中,遍历100到999之间的每一个数,并通过`isNarcissistic`函数判断是否为水仙花数,如果是就将其打印出来。
阅读全文