
Sponsored
Sponsored
The iterative approach involves summing the digits of the number repeatedly until the sum becomes a single-digit number. This is a straightforward approach and uses basic loops to repeatedly process the digits of the number.
1using System;
2
3public class AddDigitsIterative {
4 public static int AddDigits(int num) {
5 while (num >= 10) {
6 int sum = 0;
7 while (num > 0) {
8 sum += num % 10;
9 num /= 10;
10 }
11 num = sum;
12 }
13 return num;
14 }
15
16 public static void Main() {
17 int num = 38;
18 Console.WriteLine(AddDigits(num));
19 }
20}The approach in C# employs nested loops to repeatedly add the digits until the number is reduced to a single digit.
The mathematical approach leverages a known number theory result related to digit root which can be deduced using modulo 9 arithmetic. The result for the repeated digit sum is equivalent to the number modulo 9, except that when the number is zero it should remain zero.
1#include
This C solution uses modulo 9 to calculate the digit root. This gives us a constant time solution which is highly efficient.