题解 | #水仙花数#

水仙花数

https://www.nowcoder.com/practice/dc943274e8254a9eb074298fb2084703

#include <iostream>
#include <cmath>
using namespace std;

int main() {
    int m = 0;
    int n = 0;
    //多组输入用循环
    while (cin >> m >> n) {
        int flag = 0;       //标志该范围内的水仙花数
        //输出从m到n的水仙花数
        for (int i = m; i <= n; i++) {
            int num = i;
            int ge = num % 10;          //求得个位,十位,百位
            int shi = num / 10 % 10;
            int bai = num / 100 % 10;
            int ret = pow(ge, 3) + pow(shi, 3) + pow(bai,
                      3);   //算出个十百的立方和
            //相等就是水仙花数
            if (ret == i) {
                flag++;         //该范围内的水仙花数
                cout << i << " ";
            }
        }
        //如果该范围内没有水仙花数
        if (flag == 0) {
            cout << "no";
        }
        cout << endl;
    }

    system("pause");
    return 0;
}

全部评论

相关推荐

今天 12:15
门头沟学院 Java
点赞 评论 收藏
分享
想按时下班的大菠萝在...:隔壁学校的,加油多投, 实在不好找可以下个学期开学找,把算法八股准备好,项目有空再换换
投了多少份简历才上岸
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务