Day43~实现一个算法求一个数字的树根

实现一个算法求一个数字的树根。介绍如下:

  • 将一正整数 N 的各个位数相加(即横向相加)后,若加完后的值大于等于 10 的话,则继续将各位数进行横向相加直到其值小于 10 为止所得到的数,即为数根。
  • 例如对于数字 12345,有 1+2+3+4+5=15,1+5=6,则 12345 的数根为6。
cpp 复制代码
#include <stdio.h>

void func(int num)
{
    int sum = 0;
    while (num >= 10)
    {
        sum += num % 10;
        num /= 10;
    }
    sum += num;

    if (sum >= 10)
    {
        func(sum);
    }
    else
    {
        printf("%d\n", sum);
    }
}

int main(int argc, char **argv)
{
    int num;

    scanf("%d", &num);

    func(num);

    return 0;
}
相关推荐
weixin_460443563 小时前
2026年新修订《网络安全法》实施:Java私有化考试系统如何做好SBOM、漏洞治理与安全升级?
java·开发语言·在线考试系统·企业培训考试系统·宏远培训考试系统·国企培训考试系统·国产化培训系统
Cc.Y7 小时前
Java零基础入门:可变字符串与包装类:StringBuilder、StringBuffer 与 通讯录管理系统实战
java·开发语言·python
启观川7 小时前
数据结构与算法 -第 3 章 常用算法-动态规划
数据结构·笔记·python·算法
码爸7 小时前
排序算法介绍
python·算法·排序算法
阿森_dev7 小时前
2027 届毕设选题怎么选:30 个 Java 方向选题的实现难度排序
java·开发语言·spring boot·毕业设计·课程设计
by209997 小时前
C++ 多态:同一个基类接口,调用不同的函数
开发语言·c++·经验分享·多态
笔墨登场说说7 小时前
flink bin/start-cluster.sh 帮我做成开机启动
开发语言·python
Sarvartha7 小时前
Lambda 表达式和函数式接口
java·开发语言
小白学大数据7 小时前
拼多多反爬对抗实战:Scrapy 中间件化采集架构解析
开发语言·scrapy·中间件·架构
学逆向的8 小时前
win32注入代码
开发语言·网络安全·api·win32