坑点:数可以很大,所以字符串数组输入
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
#include <cstdlib>
#include <map>
#include <list>
#include <vector>
#include <stack>
#include <queue>
#include <algorithm>
#include <iostream>
#define go(i,a,b) for(int i=a;i<=b;i++)
#define og(i,a,b) for(int i=a;i>=b;i--)
#define mem(a) memset(a,0,sizeof(a))
#define cs cout<<"-----"<<endl;
using namespace std;
const int inf=0x3f3f3f3f;
const int maxn = 1e6 + 5;
const double pi = atan(1.)*4;
typedef long long ll;
int f(int x)
{
int sum = 0;
while(x)
{
sum += x % 10;
x /= 10;
}
return sum;
}
int main()
{
char n[maxn];
while(scanf("%s",n) && n[0] != '0')
{
ll sum = 0;
for(int i = 0;i < strlen(n);i++)
sum += n[i] - '0';
while(sum > 9)
sum = f(sum);
cout<<sum<<endl;
}
return 0;
}