Drill

ProblemsC++ › warmup

Sum of digits

easywarmupMathC++

A checksum routine needs the digits of a number added together.

digitSum(amount: int) → int

C++ needs a compiler and Drill does not host one yet, so this page is the reference rather than an exercise: the problem, worked examples, and the solution in full. To type it out, the same problem runs in Python.

Solve it in Python →

Where you start

int digitSum(int amount) {
    
}

Worked examples

CallResult
digitSum(0)0
digitSum(7)7
digitSum(1234)10
digitSum(-204)6

Hint

Take the absolute value first, then peel digits off with % 10 and / 10.

Reference solution in C++
int digitSum(int amount) {
    int x = amount < 0 ? -amount : amount, total = 0;
    while (x > 0) { total += x % 10; x /= 10; }
    return total;
}

The same problem in another language

More warmup problems in C++