index
| submit
| rank
| book

## digit-sum – Sum of decimal digits

Write a program that reads several integers
and prints the sum of their decimal digits.

### Input and Output

Input will consist of several lines
each with a number *x* where
0 ≤ *x* ≤ 1 000 000 000.

For each line of input,
output should contain a line
with a number *s*
indicating the sum of the digits in *x*.

Input is terminated by EOF,
you can simulate EOF on the terminal or console by using “ctrl-D”.

#### Example input

```
6
720
1234
98765
```

### The “digit sum” function

Your program should be implemented using a “digit sum” function
that receives one integer and
returns an integer indicating the sum of its digits.
Please refer to the information for the chosen language:

- Python definition:
`def digit_sum(x):`

- C prototype:
`int digit_sum(int x);`

- Haskell type:
`digitSum :: Int -> Int`

- C++ prototype:
`int digit_sum(int x);`

### Scoring

Submit your solution to be graded according to the following list:

- 1/6: works for the above example but produces output in an incorrect format
- 2/6: works for the above example and produces output in the correct format
- 4/6: works for other test cases
- 5/6: works for edge cases
- 6/6: implements the “digit sum” function

### Hints

Here are some hints:

**Automated judge:**
Keep in mind that when your program is submitted
it will not be run by a human
but instead by an automated judge.
Instructions should be followed *exactly*
or the judge will not give you a full score.
(And sometimes no score at all!)

**Produce output as you go:**
You do not need to accumulate input and then produce everything at the end.
It is enough to produce output as you go.
As soon as you read a number, write the corresponding result to the screen.

**Detecting the end of file.**
In this exercise, input is terminated by the end-of-file (EOF).
The EOF can be simulated
by the “ctrl-D” keystroke on the terminal/console session.
Please see “processing input line by line” for details on how to do this.

**Processing digits.**
You can isolate the last digit of an integer by
computing the remainder of the division by 10 (a.k.a. modulo).
Likewise, you can remove the last digit by dividing a number by 10.

try first: repeat triple inc replace

try next: digit-count

index
| submit
| rank
| book

Copyright © 2020-2021 Rudy Matela

All rights reserved