水仙花数java代码
时间: 2023-09-07 18:04:56 浏览: 115
### 回答1:
以下是水仙花数的 Java 代码:
```
public class NarcissisticNumber {
public static void main(String[] args) {
for (int i = 100; i < 1000; i++) {
int a = i % 10;
int b = i / 10 % 10;
int c = i / 100;
if (i == (a * a * a + b * b * b + c * c * c)) {
System.out.println(i);
}
}
}
}
```
这段代码遍历了 100 到 999 之间的数字,并判断每个数字是否为水仙花数。如果是,则将其输出。
### 回答2:
水仙花数,也称为阿姆斯特朗数,是指一个三位数,它的各位数字的立方和等于其本身。例如,153是一个水仙花数,因为1³ + 5³ + 3³ = 153。
下面是使用Java编写的水仙花数代码:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
for (int number = 100; number <= 999; number++) {
int digit1 = number / 100; // 获取百位数字
int digit2 = (number / 10) % 10; // 获取十位数字
int digit3 = number % 10; // 获取个位数字
int sumOfCubes = digit1 * digit1 * digit1 + digit2 * digit2 * digit2 + digit3 * digit3 * digit3;
if (sumOfCubes == number) {
System.out.println(number + "是一个水仙花数");
}
}
}
}
```
该代码使用for循环遍历100到999之间的所有三位数。对于每个数字,我们获取其各个位数的值,并计算它们的立方和。如果立方和等于该数字本身,则输出该数字是一个水仙花数。
以上是计算水仙花数的Java代码。希望对你有帮助!
### 回答3:
水仙花数是指一个三位数,它的各位数字的立方和等于该数本身。以下是水仙花数的Java代码:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
for (int i = 100; i < 1000; i++) {
if (isNarcissisticNumber(i)) {
System.out.println(i);
}
}
}
public static boolean isNarcissisticNumber(int number) {
int digit1 = number / 100; // 百位数
int digit2 = (number / 10) % 10; // 十位数
int digit3 = number % 10; // 个位数
int sumOfCubes = (int) (Math.pow(digit1, 3) + Math.pow(digit2, 3) + Math.pow(digit3, 3));
return sumOfCubes == number;
}
}
```
以上代码定义了一个`NarcissisticNumber`类,其中的`main`方法用于找出所有的水仙花数并输出。`isNarcissisticNumber`方法用于判断指定的数字是否为水仙花数。该方法首先将数字拆解成百位数、十位数和个位数,然后计算这三个数字的立方和`sumOfCubes`。最后,通过判断`sumOfCubes`是否等于原数字来确定是否为水仙花数。在`main`方法中,使用一个循环从100到999遍历所有三位数,然后调用`isNarcissisticNumber`方法进行判断。如果返回值为`true`,则输出该水仙花数。
阅读全文