三位数水仙花,判断是否是水仙花,java
时间: 2023-07-16 07:15:38 浏览: 110
水仙花数是指一个三位数,它的各位数字的立方和等于它本身。例如,153是一个水仙花数,因为1^3+5^3+3^3=153。
以下是Java实现判断一个三位数是否为水仙花数的代码:
```java
int num = 153; // 要判断的数
int digit1 = num / 100; // 获取百位数字
int digit2 = (num / 10) % 10; // 获取十位数字
int digit3 = num % 10; // 获取个位数字
if (num == digit1 * digit1 * digit1 + digit2 * digit2 * digit2 + digit3 * digit3 * digit3) {
System.out.println(num + "是一个水仙花数");
} else {
System.out.println(num + "不是一个水仙花数");
}
```
如果要判断多个数是否为水仙花数,可以将上述代码放在一个循环中,并将要判断的数作为循环变量即可。
相关问题
三位数水仙花数java
三位数水仙花数是指一个三位数,它的每位上的数字的三次幂之和与本身相等。例如,153是一个三位数水仙花数,因为1的三次方+5的三次方+3的三次方等于153。在Java中,可以使用for循环遍历所有的三位数,然后将每个三位数的个位、十位和百位上的数字获取,使用条件判断是否符合水仙花数的公式要求,最后输出所有满足要求的水仙花数。
判断某个数是否为水仙花数。先判断是否为三位数Java
判断一个数是否为水仙花数是指这个整数的每个位上的数字立方和等于该数本身。例如,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。
阅读全文