/* 解释一下题目: 就是给你一个数让你求数的数根!什么叫数根? 比如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; }