题解 | #Digital Roots#

Digital Roots

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

/*
解释一下题目: 就是给你一个数让你求数的数根!什么叫数根? 比如24这个数的数根,就是把24各个位的数加起来!2+4=6 而且6是个位数,于是它就是24的数根。 然后39这个数一样的方法,3+9=12 此时我们发现12不是个位数,所以它不是数根,继续让它各个 位数相加,1+2=3,3是个位数所以3是39的数根。
*/
#include <iostream>
using namespace std;

int digital_root(int n) {
    //当n大于9时,循环计算
    while (n > 9) {
        //新的n
        int new_n = 0;
        //计算n的各个位数之和
        while (n > 0) {
            new_n += n % 10;
            n /= 10;
        }
        //更新n
        n = new_n;
    }
    //返回n
    return n;
}

int main() {
    int num;
    //循环读入整数
    while (cin >> num) {
        //输出整数的数字根
        cout << digital_root(num) << endl;
    }
    return 0;
}

全部评论

相关推荐

07-11 22:27
中南大学 Java
程序员牛肉:学历的话没问题。但是没问题的也就只有学历了。 其实你的整体架构是正确的,博客接着干。但是项目有点过于简单了。从后端的角度上讲,你这也就是刚入门的水平,所以肯定约面试够呛。 如果你要应聘后端岗位,那你第一个项目竟然是仿写操作系统。这个你要面试官咋问你。你一定要记住一点,你简历上写的所有的东西,都是为了证明你有能力胜任当前的岗位,而不是为了证明你自己会什么。 如果你只是浅浅的做几个项目,描述也都是烂大街。技术点也都是各种混水类的配置类需求,那你就不要幻想自己能走多远。一定要保持思考,保持学习。
点赞 评论 收藏
分享
Twilight_m...:经典我朋友XXXX起手,这是那种经典的不知道目前行情搁那儿胡编乱造瞎指导的中年人,不用理这种**
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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