Java Program for Sum the digits of a given number

Given a number, find sum of its digits.

Example :

Input : n = 687
Output : 21

Input : n = 12
Output : 3

1. Iterative:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to compute 
// sum of digits in number.
import java.io.*;
  
class GFG {
      
    /* Function to get sum of digits */
    static int getSum(int n)
    {    
        int sum = 0;
          
        while (n != 0)
        {
            sum = sum + n % 10;
            n = n/10;
        }
      
    return sum;
    }
  
    // Driver program
    public static void main(String[] args)
    {
        int n = 687;
  
        System.out.println(getSum(n));
    }
}
  
// This code is contributed by Gitanjali

chevron_right


How to compute in single line?

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to compute
// sum of digits in number.
import java.io.*;
  
class GFG {
      
    /* Function to get sum of digits */
    static int getSum(int n)
    {
        int sum;
  
        /* Single line that calculates sum */
        for (sum = 0; n > 0; sum += n % 10,
                                  n /= 10);
  
        return sum;
    }
  
    // Driver code
    public static void main(String[] args)
    {
        int n = 687;
  
        System.out.println(getSum(n));
    }
}
  
// This code is contributed by Gitanjali

chevron_right


2. Recursive

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to compute
// sum of digits in number.
import java.io.*;
  
class GFG {
    
    /* Function to get sum of digits */ 
    static int sumDigits(int no)
    {
        return no == 0 ? 0 : no%10
                  sumDigits(no/10) ;
    }
  
    // Driver code
    public static void main(String[] args)
    {
    int n = 687;
  
    System.out.println(sumDigits(n));
    }
}
  
// This code is contributed by Gitanjali

chevron_right


Please refer complete article on Program for Sum the digits of a given number for more details!



My Personal Notes arrow_drop_up


Article Tags :

Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.