简单用Java打印水仙花数
时间: 2023-12-18 22:05:21 浏览: 24
Sure! 水仙花数指一个三位数,其各个位数数字立方和等于该数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。以下是Java代码:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
for (int i = 100; i < 1000; i++) {
int digit1 = i / 100;
int digit2 = i / 10 % 10;
int digit3 = i % 10;
if (digit1 * digit1 * digit1 + digit2 * digit2 * digit2 + digit3 * digit3 * digit3 == i) {
System.out.println(i);
}
}
}
}
```
这段代码会打印出所有的水仙花数。
相关问题
用Java打印水仙花数
水仙花数是指一个 n 位数 ( n>=3 ),它的每个位上的数字的 n 次幂之和等于它本身。例如:1^3 + 5^3 + 3^3 = 153。
以下是用Java打印出所有3位水仙花数的代码示例:
```java
public class Main {
public static void main(String[] args) {
int start = 100;
int end = 999;
for (int i = start; i <= end; i++) {
int sum = 0;
int temp = i;
while (temp > 0) {
int digit = temp % 10;
sum += Math.pow(digit, 3);
temp /= 10;
}
if (sum == i) {
System.out.println(i);
}
}
}
}
```
解释一下代码:
- 从100到999的所有整数都遍历一遍
- 对于每个数字,通过循环将其每个位上的数字的立方值相加,得到一个总和
- 如果总和等于原数字,则打印出这个数字
java打印水仙花数
好的,以下是 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 (a * a * a + b * b * b + c * c * c == i) {
System.out.println(i);
}
}
}
}
```
这段代码会输出所有三位数的水仙花数。