| 描述: |
求整数的Root:给定正整数,求每位数字之和;如果和不是一位数,则重复; |
| 题目类别: | 数组 |
| 难度: | 初级 |
| 运行时间限制: | 10Sec |
| 内存限制: | 128MByte |
| 阶段: | 入职前练习 |
| 输入: |
输入任意一个或多个整数 |
| 输出: |
输出各位数字之和,直到和为个位数为止(输入异常,则返回-1)
多行,每行对应一个输入数据的结果。 |
| 样例输入: |
25
865
|
| 样例输出: |
7 1 |
完整代码:
#include<iostream>
using namespace std;
int sum(int n)
{
if(n<0)
return -1;
if(n<10)
return n;
int cnt;
while(n)
{
cnt=cnt+n%10;
n=n/10;
}
sum(cnt);
}
int main()
{
int n;
while(cin>>n)
cout<<sum(n)<<endl;
}
本文介绍了一种求解整数根的简单算法,即计算一个整数各位数字之和直至结果为个位数的过程。文章提供了一个C++实现示例,通过递归方式不断累加数字直至达到目标条件。
1290

被折叠的 条评论
为什么被折叠?



