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
Java 实现求解 0 到 1000000 之间的水仙花数

原文地址: https://www.cveoy.top/t/topic/m4vd 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录