C# programs to calculate the sum of the digits of an integer have been shown here. For example if a number is $1234$ then the sum of the digits is $1 + 2 + 3 + 4$ i.e. $10$. The following section covers the iterative and recursive approaches to find the sum of digits. The algorithm, time complexity and pseudocode of the program have been shown below.

## 1. Algorithm to calculate sum of digits of an integer

1. Take a number x as input.

2. Initialize a variable to 0 say sum = 0.

3. Perform r = x % 10 and add r to sum i.e sum = sum + r

4. Perform x = x / 10

5. If x = 0 stop the process and display sum as output else go to step 3.

## 2. Pseudocode to calculate sum of digits of an integer

Input : A number $n$

Output : The sum of digits of $n$

1. Procedure sumOfDigits($n$):

2. $sum \leftarrow 0$

3. Repeat until $n \neq 0$

4. $sum \leftarrow sum + (n \mod 10)$

5. $n \leftarrow n / 10$

6. Return $sum$

7. End Procedure

## 3. Time complexity to calculate sum of digits of an integer

Time Complexity: O(log(n))

Where n is the input number.

## 4.1. C# Program & output to calculate sum of digits of an integer using iteration

Code has been copied
/************************************
alphabetacoder.com
C# program to calculate the sum of
digits of an integer using iteration
**************************************/

using System;

namespace SumOfDigits {
class Program {
static void Main(string[] args) {
// declare variables
int num, sum = 0, r;

// take input of the number
Console.Write("Enter the integer = ");

//find sum of the digits
while (num != 0) {
// extract the unit digit
r = num % 10;
// do sum
sum = sum + r;
//divide the number by 10
num = num / 10;
}

// display result
Console.WriteLine("Sum of digits = " + sum);

// wait for user to press any key
}
}
}


Output

Enter the integer = 5566

Sum of digits = 22

## 4.2. C# Program & output to calculate sum of digits of an integer using recursion

Code has been copied
/************************************
alphabetacoder.com
C# program to calculate the sum of
digits of an integer using recursion
**************************************/

using System;

namespace SumOfDigits {
class Program {
// recursive function to calculate sum of digits
static int digit_sum(int num) {
if (num == 0)
return 0;
else
return (num % 10) + digit_sum(num / 10);
}

static void Main(string[] args) {
// declare variables
int num;

// take input of the number
Console.Write("Enter the integer = ");

// calculate the sum by calling function
// display result
Console.WriteLine("Sum of digits = " + digit_sum(num));

// wait for user to press any key