判断某个数是否为水仙花数。先判断是否为三位数Java
时间: 2024-09-10 13:13:20 浏览: 36
判断一个数是否为水仙花数是指这个整数的每个位上的数字立方和等于该数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。
在Java中,你可以通过以下步骤来实现:
```java
public class NarcissisticNumber {
public static boolean isNarcissistic(int num) {
if (num < 100 || num > 999) { // 只考虑三位数
return false;
}
int sumOfDigits = 0;
String strNum = String.valueOf(num); // 转换成字符串便于操作每位数字
for (int digit : strNum.toCharArray()) {
int digitValue = Character.getNumericValue(digit);
sumOfDigits += Math.pow(digitValue, 3); // 累加每个位数的立方
}
return sumOfDigits == num; // 检查结果是否相等
}
public static void main(String[] args) {
System.out.println(isNarcissistic(153)); // 输出 true
System.out.println(isNarcissistic(370)); // 输出 false
}
}
```
在这个代码中,我们首先检查输入的数是否在三位数范围内。然后,我们将数转换为字符串,遍历每一位,计算其立方并累加。最后,比较计算出的总和是否与原数相等,如果相等,则返回true,否则返回false。