当前位置:首页 C++ > 正文

求100~999之间的水仙花数

作者:野牛程序员:2023-07-08 13:55:41 C++阅读 3799

水仙花数是指一个三位数,其各位数字的立方和等于该数本身。也就是说,如果一个三位数的个位、十位和百位数字的立方和等于该数本身,那么这个数就是水仙花数。

以下是100至999之间的水仙花数列表:

153, 370, 371, 407

这些数字的立方和分别为:

153 = 1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153 370 = 3^3 + 7^3 + 0^3 = 27 + 343 + 0 = 370 371 = 3^3 + 7^3 + 1^3 = 27 + 343 + 1 = 371 407 = 4^3 + 0^3 + 7^3 = 64 + 0 + 343 = 407

这些都是三位数中的水仙花数。

以下是使用C++编写的求解100到999之间水仙花数的代码示例:

#include <iostream>
#include <cmath>

bool isArmstrongNumber(int number) {
    int originalNumber = number;
    int sum = 0;
    int digit;

    while (number != 0) {
        digit = number % 10;
        sum += std::pow(digit, 3);
        number /= 10;
    }

    return sum == originalNumber;
}

int main() {
    std::cout << "水仙花数列表:" << std::endl;
    for (int number = 100; number <= 999; number++) {
        if (isArmstrongNumber(number)) {
            std::cout << number << " ";
        }
    }
    std::cout << std::endl;

    return 0;
}


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击