Java判断某个数是否“水仙花数”。(先判断其是否三位数)
时间: 2024-09-10 10:22:45 浏览: 35
水仙花数是指一个三位数,它的每个位上的数字的立方之和等于它本身。例如,153是一个水仙花数,因为 1^3 + 5^3 + 3^3 = 153。判断一个数是否为水仙花数的步骤如下:
1. 首先判断这个数是否为三位数,即100 <= 数 <= 999。
2. 如果是三位数,进一步判断它是否满足水仙花数的条件,即计算每一位数字的立方和是否等于原数。
下面是一个用Java编写的判断水仙花数的示例代码:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
int number = 153; // 可以更改这个值来测试其他数字
if (isNarcissisticNumber(number)) {
System.out.println(number + " 是一个水仙花数。");
} else {
System.out.println(number + " 不是一个水仙花数。");
}
}
public static boolean isNarcissisticNumber(int num) {
// 判断是否为三位数
if (num < 100 || num > 999) {
return false;
}
int originalNumber = num;
int sum = 0;
while (num > 0) {
int digit = num % 10; // 获取个位数
sum += Math.pow(digit, 3); // 累加每个位上数字的立方
num /= 10; // 移除个位数
}
// 判断立方和是否等于原数
return sum == originalNumber;
}
}
```