描述 。通过对整数的数字求和来找到正整数的数字根如果结果值是单个数字,则该数字是数字根。如果结果值包含两个或更多个数字,则对这些数字求和并重复该过程。只要需要获得一位数,这就会继续。
|
输入 输入文件将包含一个正整数列表,每行一个,输入的结尾将由整数值零表示。
|
产量 对于输入中的每个整数,在输出的单独行上输出其数字根。
|
样本输入
|
样本输出
|
#include<iostream>
using namespace std;
int main() {
char str[10000];
while (cin>>str) {
int answer = 0;
if (strcmp(str, "0") == 0) {
break;
}
int len = strlen(str);
for (int i = 0; i < len; i++) {
answer += str[i] - '0';
}
while (answer >= 10) {//是大于等于,不是只有大于
int temp = answer;
answer = 0;//归零
while (temp > 0) {
answer += temp % 10;
temp /= 10;
}
}
printf("%d\n", answer);
}
return 0;
}