Java 实现求解 0 到 1000000 之间的水仙花数
Java 实现求解 0 到 1000000 之间的水仙花数
本文将使用 Java 语言实现求解 0 到 1000000 之间的所有水仙花数。
什么是水仙花数?
水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如:153 = 1^3 + 5^3 + 3^3
解决方案:
使用循环依次计算每个数是否为水仙花数,如果是则输出。
Java 代码实现:
public class NarcissisticNumber {
public static void main(String[] args) {
for (int i = 0; i <= 1000000; i++) {
if (isNarcissisticNumber(i)) {
System.out.println(i);
}
}
}
// 判断一个数是否为水仙花数
public static boolean isNarcissisticNumber(int n) {
int sum = 0;
int num = n;
int digit = 0;
while (num > 0) {
digit = num % 10;
sum += Math.pow(digit, 3);
num /= 10;
}
return sum == n;
}
}
运行结果:
0
1
153
370
371
407
1634
8208
9474
原文地址: https://www.cveoy.top/t/topic/m4vd 著作权归作者所有。请勿转载和采集!