Monday, March 27, 2017

Java Code: Calculate Sum of Digits till it becomes a Single Digit Number

The code should print something like this:

Now Number = 388
Initial Number:388
Sum = 19
Now Number = 19
Sum = 10
Now Number = 10

Sum = 1

Now let's Have a look at the code:


public class SumOfDigits {

    public static void main(String[] args) {

        int num = 388;
        int numOfDigits[] = calculateNumberOfDigits(num) ;
        System.out.println("Initial Number:" + num);
        while (numOfDigits.length>1){
            int sum = 0;
            for (int i = 0; i < numOfDigits.length; i ++){
                sum = sum + numOfDigits[i];
             }
            System.out.println("Sum = " + sum);
            if(sum < 10){
                break;
             }
             numOfDigits = calculateNumberOfDigits(sum);
         }
}

    public static int[] calculateNumberOfDigits(int num){
        System.out.println("Now Number = " + num);
        int numOfDigits = 0;
        int digits[] = new int[100];
        while(num>0){
            digits[numOfDigits] = num%10;
            num = num/10;
            numOfDigits = numOfDigits +1;
         }
        return digits;
     }

}

No comments:

Post a Comment