Java写一个水鲜花数
时间: 2023-08-31 22:26:56 浏览: 172
用java写的水仙花数
### 回答1:
水仙花数是指一个三位数,它的每个位上的数字的立方和等于它本身。例如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 a = i/100; //百位数
int b = i%100/10; //十位数
int c = i%10; //个位数
if(i == a*a*a + b*b*b + c*c*c){
System.out.println(i + "是水仙花数");
}
}
}
}
```
以上代码使用for循环遍历100到999之间的所有三位数,对每个数分别计算其百位数、十位数和个位数,然后判断其是否是水仙花数,如果是就输出结果。
### 回答2:
水仙花数是指一个n位正整数(n≥3),它的每个位上的数字的n次幂之和等于它本身。
在Java中,可以通过以下代码写一个判断水仙花数的程序:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
for (int number = 100; number < 1000; number++) {
int hundreds = number / 100;
int tens = (number / 10) % 10;
int units = number % 10;
int sum = (int) (Math.pow(hundreds, 3) + Math.pow(tens, 3) + Math.pow(units, 3));
if (sum == number) {
System.out.println(number + "是水仙花数");
}
}
}
}
```
上述代码通过一个循环从100遍历到999,对每个三位数进行水仙花数判断。将数字分解为百位、十位和个位,然后计算每个位上的数字的立方和。如果和等于原来的数字,就输出它是水仙花数。
这个程序运行结果会输出所有的水仙花数,即153、370、371和407。
阅读全文