java 方法 打印水仙花数
时间: 2023-08-30 12:09:41 浏览: 110
以下是 Java 中打印水仙花数的方法:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
for (int i = 100; i < 1000; i++) {
int a = i / 100; // 获取百位数
int b = i / 10 % 10; // 获取十位数
int c = i % 10; // 获取个位数
if (i == a * a * a + b * b * b + c * c * c) { // 判断是否为水仙花数
System.out.println(i); // 打印水仙花数
}
}
}
}
```
该方法通过循环遍历 100 到 999 之间的数,然后依次获取每个数的百位、十位和个位数,再根据水仙花数的定义判断是否为水仙花数,最后将水仙花数打印出来。
相关问题
Java程序打印水仙花数
可以使用以下Java代码打印水仙花数:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
int start = 100;
int end = 999;
System.out.println("水仙花数是:");
for (int i = start; i <= end; i++) {
if (isNarcissisticNumber(i)) {
System.out.println(i);
}
}
}
public static boolean isNarcissisticNumber(int number) {
int sum = 0;
int temp = number;
int length = String.valueOf(number).length();
while (temp != 0) {
int digit = temp % 10;
sum += Math.pow(digit, length);
temp /= 10;
}
return sum == number;
}
}
```
以上代码将打印出所有的三位水仙花数。
Java打印水仙花数
水仙花数是指一个三位数,其各位数字的立方和等于该数本身。以下是Java代码实现:
```java
public class DaffodilNumber {
public static void main(String[] args) {
for (int i = 100; i < 1000; i++) {
int a = i / 100; //获取百位数
int b = i % 100 / 10; //获取十位数
int c = i % 10; //获取个位数
if (a * a * a + b * b * b + c * c * c == i) {
System.out.println(i + "是水仙花数");
}
}
}
}
```
以上代码的输出结果为:
```
153是水仙花数
370是水仙花数
371是水仙花数
407是水仙花数
```
阅读全文