HDOJ  1013   Digital Roots
2015-12-18 18:07
435 查看
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1013
#include <stdio.h>
#include <math.h>
#include <string.h>
int root(int a)
{
int t=0;
while(a>9)
{
t+=a;
a=(a-a)/10;
}
if(t+a>9)
t=root(t+a);
else
t+=a;
return t;
}
int main()
{
char c[1001];
int n;
while(scanf("%s",c)!=EOF
&& (c[0]!='0'||c[1]!='\0'))
{
int
a=0,i;
for(i=0;
c[i]!='\0'; i++)
a=a+c[i]-'0';
printf("%d\n",root(a));
memset(c,0,sizeof(c));
}
return 0;
}
**************************************************
感觉下面这种代码也挺好的
#include <iostream>
using namespace std;
int main()
{
int
a,sum;
string
b;
while(cin>>b,b!="0")
{
a=0;
for(int i=0;i<b.length();i++)
a+=b[i]-'0';
while(a>=10)
{
sum=0;
while(a>=10)
{
sum+=a;
a/=10;
}
sum+=a;
a=sum;
}
cout<<a<<endl;
}
return
0;
}
#include <stdio.h>
#include <math.h>
#include <string.h>
int root(int a)
{
int t=0;
while(a>9)
{
t+=a;
a=(a-a)/10;
}
if(t+a>9)
t=root(t+a);
else
t+=a;
return t;
}
int main()
{
char c[1001];
int n;
while(scanf("%s",c)!=EOF
&& (c[0]!='0'||c[1]!='\0'))
{
int
a=0,i;
for(i=0;
c[i]!='\0'; i++)
a=a+c[i]-'0';
printf("%d\n",root(a));
memset(c,0,sizeof(c));
}
return 0;
}
**************************************************
感觉下面这种代码也挺好的
#include <iostream>
using namespace std;
int main()
{
int
a,sum;
string
b;
while(cin>>b,b!="0")
{
a=0;
for(int i=0;i<b.length();i++)
a+=b[i]-'0';
while(a>=10)
{
sum=0;
while(a>=10)
{
sum+=a;
a/=10;
}
sum+=a;
a=sum;
}
cout<<a<<endl;
}
return
0;
}
相关文章推荐
- HDOJ&nbsp;&nbsp;1012&nbsp;&nbsp;&nbsp;&nbsp;u&nbsp;Calculate&nbsp;e
- HDOJ&nbsp;&nbsp;1016&nbsp;&nbsp;&nbsp;Prime&nbsp;Ring&nbsp;Problem
- HDOJ&nbsp;&nbsp;2181&nbsp;&nbsp;&nbsp;哈密顿绕行世界问题
- HDOJ&nbsp;&nbsp;1181&nbsp;&nbsp;&nbsp;&nbsp;变形课
- 韦东山第三期视频监控wpa_supplicant编译出错问题
- Android图片裁剪开源组件 实现了图片翻转,裁剪
- 使用Android Studio新建项目
- 关于android进程间通信(handler、messenger、AIDL)
- package.json依赖管理dependencies中 ^ 和 ~ 的区别
- HDOJ&nbsp;1350&nbsp;&nbsp;&nbsp;&nbsp;Robot&nbsp;Motion
- HDOJ&nbsp;&nbsp;1722&nbsp;&nbsp;&nbsp;&nbsp;Cake
- HDOJ&nbsp;&nbsp;1271&nbsp;&nbsp;&nbsp;整数对
- HDOJ&nbsp;&nbsp;&nbsp;1021&nbsp;&nbsp;&nbsp;&nbsp;Fibonacci&nbsp;Again
- Fibonacci数列
- HDOJ&nbsp;&nbsp;1010&nbsp;&nbsp;&nbsp;Tempter&nbsp;of&nbsp;the&nbsp;Bone
- HDOJ&nbsp;&nbsp;1005&nbsp;&nbsp;&nbsp;Number&nbsp;Sequence
- HDOJ&nbsp;&nbsp;1040&nbsp;&nbsp;As&nbsp;Easy&nbsp;As&nbsp;A+B
- 欧拉φ函数
- C语言中的qsort函数
- C++中的sort函数