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.
#include<cstring>
int root(int num)
{
int sum=0;
if(num/10==0)
return num;
while(num)
{
sum+=num%10;
num/=10;
}
return sum;
}
{
scanf("%s",&a);
while(a[0]-'0')
{
int len=strlen(a);
int sum=0;
for(int i=0;i<len;i++)
sum+=a[i]-'0';
int temp=root(sum);
while(temp/10)
{
temp=root(temp);
}
printf("%d/n",temp);
scanf("%s",&a);
}
return 0;
}