java使用三元判断数字是否为”水仙花数”。
时间: 2024-05-15 13:12:38 浏览: 106
水仙花数指一个三位数,其各位数字的立方和等于该数本身,例如 153 就是一个水仙花数,因为 $1^3+5^3+3^3=153$。下面是使用三元运算符判断一个三位数是否为水仙花数的 Java 代码:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
int num = 153;
boolean isNarcissistic = (num == Math.pow(num/100, 3) + Math.pow(num%100/10, 3) + Math.pow(num%10, 3));
System.out.println(isNarcissistic ? num + "是水仙花数" : num + "不是水仙花数");
}
}
```
其中,使用了 Math.pow() 方法计算三位数各位数字的立方和,并使用三元运算符判断该数是否为水仙花数。
相关问题
用Java语言使用三元判断数字是否为”水仙花数”
水仙花数是指一个三位数,其各位数字立方和等于该数本身,例如153=1^3+5^3+3^3。
你可以使用下面的Java代码来判断一个三位数是否为水仙花数:
```
import java.util.Scanner;
public class NarcissisticNumber {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入一个三位数:");
int number = input.nextInt();
int a = number / 100; // 百位数
int b = number % 100 / 10; // 十位数
int c = number % 10; // 个位数
if (number == a * a * a + b * b * b + c * c * c) {
System.out.println(number + "是水仙花数");
} else {
System.out.println(number + "不是水仙花数");
}
}
}
```
这段代码首先使用 `Scanner` 类获取用户输入的三位数,然后使用整除和取模运算获取该数的百位、十位和个位数字。接着使用三元运算符判断该数是否为水仙花数,并输出相应的结果。
打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身Java
在Java中,我们可以编写一个简单的程序来找出所有的"水仙花数"。所谓"水仙花数"(也叫三元数),指的是一个三位数,它的每个位数的立方和等于它自身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。
以下是Java代码片段,用于打印所有水仙花数:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
for (int i = 100; i <= 999; i++) {
if (isNarcissistic(i)) {
System.out.println(i);
}
}
}
// 判断是否是水仙花数的方法
public static boolean isNarcissistic(int number) {
int sum = 0;
String numStr = Integer.toString(number);
for (char digit : numStr.toCharArray()) {
int digitValue = Character.getNumericValue(digit);
sum += Math.pow(digitValue, 3);
}
return sum == number;
}
}
```
在这个程序中,我们遍历从100到999的所有三位数,并使用`isNarcissistic()`函数检查它们是否满足水仙花条件。如果是,就将其打印出来。
阅读全文