题目描述
数根是这样定义的:对于一个正整数 n ,将它的各个数位上的数字相加得到一个新数,如果这个数是一位数,我们就称之为 n 的数根,否则重复处理直到它成为一个一位数。
例如, n = 34 , 3+ 4 = 7 , 7 是一位数,所以 7 是 34 的数根。
再如, n = 345 , 3 + 4 + 5= 12 , 1 + 2= 3 , 3 是一位数,所以 3 是 345 的数根。
对于输入数字 n ,编程计算它的数根。
输入格式
一个整数。(n<=10的1000次方 )
输出格式
一个整数。
输入样例
999999999
输出样例
9
#include<bits/stdc++.h>
using namespace std;
int sum(int n){
int sum=0;
while(n!=0){
sum+=n%10;
n/=10;
}
return sum;
}
int main()
{
string s;
cin>>s;
int n=0;
int l=s.size();
for(int i=0;i<l;i++){
n+=(s[i]-'0');
}
while(n>=10){
n=sum(n);
}
cout<<n;
return 0;
}