在本文中,我们将讨论一个程序,该程序将找到一个数字的总和,直到该总和本身变成一个数字并且无法进行进一步的求和。
例如,以数字14520为例。将这个数字相加得到1 + 4 + 5 + 2 + 0 =12。由于这不是单个数字,我们将进一步添加收到的数字。 。将它们相加得到1 + 2 = 3。
现在,3是最终答案,因为它本身是一个数字,并且不能再添加数字。
为了解决这个问题,我们将使用一种方法,即被9整除的数字的位数之和仅等于9。对于不能被9整除的数字,我们可以将它们除以9,以获得剩下的数字,这将是给定数字的最终总和。
#include<bits/stdc++.h>
using namespace std;
//通过9检验除数的功能
int sum_digits(int n) {
if (n == 0)
return 0;
else if (n%9 == 0)
return 9;
else
return (n%9);
}
int main() {
int x = 14520;
cout<<sum_digits(x)<<endl;
return 0;
}输出结果
3