Problem:
Sum of Numbers

Write a program which reads an integer and prints sum of its digits.

Input

The input consists of multiple datasets. For each dataset, an integer x is given in a line. The number of digits in x does not exceed 1000.

The input ends with a line including single zero. Your program should not process for this terminal symbol.

Output

For each dataset, print the sum of digits in x.

Sample Input

123
55
1000
0

Sample Output

6
10
1

Solution in C# (judge verdict: Accepted)

using System;

class Sample30
{
    public static void Main()
    {
        while (true)
        {
            var data = Console.ReadLine().Trim();
            
            //終了処理
            if (data == "0") 
            {
                break;
            }
            
            var result = 0;
            var limit = data.Length;
            int sumNumber = 0;
            
            //計算して出力
            for (int  i = 0; i < limit; i++)
            {
                //Parse
                try
                {
                    sumNumber = int.Parse(data[i].ToString());
                }
                catch(FormatException e)
                {
                    Console.WriteLine(e.StackTrace);
                    Console.WriteLine("入力された値を数字に変換できませんでした。");
                    Environment.Exit(0);
                }
                
                //out of range
                try
                {
                    if(9999 < sumNumber || sumNumber < -9999)
                    {
                        throw new ArgumentOutOfRangeException();
                    }
                }
                catch(ArgumentOutOfRangeException e)
                {
                    Console.WriteLine(e.StackTrace);
                    Console.WriteLine("データの要素が範囲外です。");
                    Environment.Exit(0);
                }
                
                result += sumNumber ;
            }
            Console.WriteLine(result);
            result = 0;
       }
    }
}