# Given a number N in decimal base, find the sum of digits in any base B

• Difficulty Level : Easy
• Last Updated : 06 Nov, 2021

Given a number N in decimal base, the task is to find the sum of digits of the number in any base B
Examples:

Input: N = 100, B = 8
Output:
Explanation:
(100)8 = 144
Sum(144) = 1 + 4 + 4 = 9
Input: N = 50, B = 2
Output:
Explanation:
(50)2 = 110010
Sum(110010) = 1 + 1 + 0 + 0 + 1 + 0 = 3

Approach: Find unit digit by performing modulo operation on number N by base B and updating the number again by N = N / B and update sum by adding the unit digit at each step.
Below is the implementation of above approach

## C++

 `// C++ Implementation to Compute Sum of``// Digits of Number N in Base B` `#include ``using` `namespace` `std;` `// Function to compute sum of``// Digits of Number N in base B``int` `sumOfDigit(``int` `n, ``int` `b)``{``    ` `    ``// Initialize sum with 0``    ``int` `unitDigit, sum = 0;``    ``while` `(n > 0) {``        ` `        ``// Compute unit digit of the number``        ``unitDigit = n % b;` `        ``// Add unit digit in sum``        ``sum += unitDigit;` `        ``// Update value of Number``        ``n = n / b;``    ``}``    ``return` `sum;``}` `// Driver function``int` `main()``{``    ``int` `n = 50;``    ``int` `b = 2;``    ``cout << sumOfDigit(n, b);``    ``return` `0;``}`

## Java

 `// Java Implementation to Compute Sum of``// Digits of Number N in Base B``class` `GFG``{` `// Function to compute sum of``// Digits of Number N in base B``static` `int` `sumOfDigit(``int` `n, ``int` `b)``{``    ` `    ``// Initialize sum with 0``    ``int` `unitDigit, sum = ``0``;``    ``while` `(n > ``0``)``    ``{``        ` `        ``// Compute unit digit of the number``        ``unitDigit = n % b;` `        ``// Add unit digit in sum``        ``sum += unitDigit;` `        ``// Update value of Number``        ``n = n / b;``    ``}``    ``return` `sum;``}` `// Driver code``public` `static` `void` `main(String[] args)``{``    ``int` `n = ``50``;``    ``int` `b = ``2``;``    ``System.out.print(sumOfDigit(n, b));``}``}` `// This code is contributed by PrinciRaj1992`

## Python3

 `# Python3 Implementation to Compute Sum of``# Digits of Number N in Base B` `# Function to compute sum of``# Digits of Number N in base B``def` `sumOfDigit(n, b):` `    ``# Initialize sum with 0``    ``unitDigit ``=` `0``    ``sum` `=` `0``    ``while` `(n > ``0``):``        ` `        ``# Compute unit digit of the number``        ``unitDigit ``=` `n ``%` `b` `        ``# Add unit digit in sum``        ``sum` `+``=` `unitDigit` `        ``# Update value of Number``        ``n ``=` `n ``/``/` `b` `    ``return` `sum` `# Driver code``n ``=` `50``b ``=` `2``print``(sumOfDigit(n, b))` `# This code is contributed by ApurvaRaj`

## C#

 `// C# Implementation to Compute Sum of``// Digits of Number N in Base B``using` `System;` `class` `GFG``{` `// Function to compute sum of``// Digits of Number N in base B``static` `int` `sumOfDigit(``int` `n, ``int` `b)``{``    ` `    ``// Initialize sum with 0``    ``int` `unitDigit, sum = 0;``    ``while` `(n > 0)``    ``{``        ` `        ``// Compute unit digit of the number``        ``unitDigit = n % b;` `        ``// Add unit digit in sum``        ``sum += unitDigit;` `        ``// Update value of Number``        ``n = n / b;``    ``}``    ``return` `sum;``}` `// Driver code``public` `static` `void` `Main(String[] args)``{``    ``int` `n = 50;``    ``int` `b = 2;``    ``Console.Write(sumOfDigit(n, b));``}``}` `// This code is contributed by PrinciRaj1992`

## Javascript

 ``

Output:

`3`

Time Complexity: O(N), N = number of digits

Auxiliary Space: O(1)

My Personal Notes arrow_drop_up