#include <stdio.h>
int main(void)
{
int number;
scanf("%d", &number);
printf("The digital root of %d is %d.", number, (1 + (number - 1) % 9));
}
Если бы я не смог найти формулу Рамана, я бы написал эту программу ...:
#include <stdio.h>
#include <ctype.h>
int main(void)
{
int c;
int number = 0;
while ((c = getchar()) != EOF)
{
if (isdigit(c))
number += (c - '0');
}
if (number <= 9)
{
printf("The digital root is %d\n", number);
}
else
{
printf("%d", number);
}
}
После компиляции, чтобы запустить это, в основном вы просто соединяете их вместе. Я думаю, что четыре - это максимум, что вам может понадобиться для целого числа.
$ echo 829382938 | ./digitalroot | ./digitalroot | ./digitalroot | ./digitalroot