C++程序,用于求一个数字的各位数字之和,直到和变成一位数。
在这篇文章中,我们将讨论一个程序,用于查找一个数字的各位数字之和,直到这个和本身变成一位数,并且无法再进行求和。
例如,以数字14520为例。将此数字的各位数字相加,我们得到1 + 4 + 5 + 2 + 0 = 12。由于这不是一位数,我们将进一步将得到的数字的各位数字相加。将它们相加,我们得到1 + 2 = 3。
现在,3 是最终答案,因为它本身就是一个一位数,并且它的各位数字无法再进行相加。
为了解决这个问题,我们将使用以下方法:一个数字的各位数字之和等于 9 的倍数的各位数字之和也等于 9。对于不能被 9 整除的数字,我们可以将它们除以 9 以获得余数,这个余数将是给定数字的最终和。
示例
#include<bits/stdc++.h> using namespace std; //function to check the divisibility by 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
广告