HDU 1013 Digital Roots
2015-11-24 19:44
274 查看
Digital Roots
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 62631 Accepted Submission(s): 19453
[align=left]Problem Description[/align]
The digital root of a positive integer is found by summing the digits of the integer. If the resulting value is a single digit then that digit is the digital root. If the resulting value contains two or more digits, those digits are summed and the process is repeated. This is continued as long as necessary to obtain a single digit.
For example, consider the positive integer 24. Adding the 2 and the 4 yields a value of 6. Since 6 is a single digit, 6 is the digital root of 24. Now consider the positive integer 39. Adding the 3 and the 9 yields 12. Since 12 is not a single digit, the process must be repeated. Adding the 1 and the 2 yeilds 3, a single digit and also the digital root of 39.
[align=left]Input[/align]
The input file will contain a list of positive integers, one per line. The end of the input will be indicated by an integer value of zero.
[align=left]Output[/align]
For each integer in the input, output its digital root on a separate line of the output.
[align=left]Sample Input[/align]
24
39
0
[align=left]Sample Output[/align]
6
3
#include<stdio.h>
#include<string.h>
int main()
{
char a,b;
int s1,s2;
while(1)
{
s1=0;
scanf("%c",&a);
if(a=='0')
break;
s1=s1+a-'0';
s2=0;
while(1)
{
scanf("%c",&a);
if(a=='\n')
break;
s1=s1+a-'0';
}
while(1)
{
while(s1!=0)
{
s2=s2+s1%10;
s1=s1/10;
}
if(s2<10)
break;
else
{
s1=s2;
s2=0;
}
}
printf("%d\n",s2);
}
return 0;
}
相关文章推荐
- ios解析XML和json数据
- MySQL新建用户,授权,删除用户,修改密码等命令
- 第十四章 断言和单元测试
- SharedPreferences
- uva11721 Instant View of Big Bang
- HDU-1234(string字符串)
- MySQL修改root密码的多种方法
- JVM (2)-- JVM内存模型
- java中导入类
- 笔记----算法导论(一)
- 学习计划
- BadBoy自动化测试工具1 界面介绍
- 十个利用矩阵乘法解决的经典题目(From Matrix67)
- 12.面向对象(包含修饰词的用法范围)
- 博客所需图片
- python中os.open,报错:No such file or directory:
- 竞品技术三瞥安装包的大小
- zoj3161 DP
- Ubuntu修改环境变量
- Ubuntu修改环境变量