用Java写一个水仙花数
时间: 2024-04-11 17:07:45 浏览: 22
水仙花数是指一个三位数,其各位数字的立方和等于该数本身。例如:153=1^3+5^3+3^3。
下面是用 Java 来写一个水仙花数的示例代码:
```
public class NarcissisticNumber {
public static void main(String[] args) {
// 循环遍历100~999之间的数字
for (int i = 100; i <= 999; i++) {
// 分离出百位、十位、个位
int hundreds = i / 100;
int tens = (i / 10) % 10;
int units = i % 10;
// 判断是否为水仙花数
if (Math.pow(hundreds, 3) + Math.pow(tens, 3) + Math.pow(units, 3) == i) {
System.out.println(i + "是水仙花数");
}
}
}
}
```
在上面的代码中,我们使用一个循环遍历100~999之间的数字,然后使用整数除法和求余运算符来分离出百位、十位、个位。最后,使用 Math.pow() 函数来计算各位数字的立方和,并判断是否等于该数本身。
相关问题
用java写一个水仙花数
什么是水仙花数?
水仙花数是指一个三位数,它的各位数字的立方和等于该数本身。例如:153=1³+5³+3³。
使用Java编写水仙花数程序的代码如下:
```
public class NarcissisticNumber {
public static void main(String[] args) {
for(int i = 100; i < 1000; i++) {
int unitDigit = i % 10;
int tensDigit = (i / 10) % 10;
int hundredsDigit = i / 100;
if(i == (Math.pow(unitDigit,3) + Math.pow(tensDigit,3) + Math.pow(hundredsDigit,3))) {
System.out.println(i);
}
}
}
}
```
运行结果:
```
153
370
371
407
```
在上面的代码中,我们使用了一个for循环来遍历所有三位数。然后,使用取模运算符和整数除法来获取每个数字的个位、十位和百位数字。最后,使用if语句判断该数字是否为水仙花数,是则输出。
用Java写一个水仙花数算法
水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身。例如:153=1^3+5^3+3^3。
以下是用 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 之间的所有数,并判断它们是否是水仙花数。如果是,就会打印出来。
阅读全文