实现一个算法求一个数字的树根。介绍如下:
- 将一正整数 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;
}