In the previous article, we have seen Java Program to Count Total Digits in a Number
In this article we will see how we can find generic root of a number by using Java programming language.
Java Program to Calculate Generic Root of a Number
Before jumping into the program directly, let’s know about generic root first.
Generic Root of A Number:
Generic root of a number represents finding sum of all the digits of a number till we get a single digit sum value.
Example:
Let the number is 65372
95979 = 9+5+9+7+9 = 39 = 3+9 =12 = 1+2 =3
Let’s see different ways to find generic root of a number.
Method-1: Java Program to Calculate Generic Root of a Number By Using Static Input Value
Approach:
- Declare a number.
- Then take a while loop and continue it till the number is a one digit number.
- Inside first while loop take another while loop and find the sum of each digit of a number.
- Then out side inner while loop, check if the sum value is more than one digit number(means greater than equal to 10), then again that sum value becomes the number value and first while loop executes again.
- If sum value is a single digit number then print that sum value which is generic root value of original number.
Program:
import java.util.*; class Main { public static void main(String arg[]) { //Scanner class object created Scanner sc=new Scanner(System.in); // a number declared int num=98765; //continue while loop if 'num' is 2 digit value while(num >= 10) { int rem; int sum=0; //continue while loop till 'num' value becomes 0 //find sum of each digit of a number while(num != 0) { rem = num % 10; sum=sum + rem; num=num/10; } //if 'sum' value is more than two digit if(sum >= 10) { //then assign 'sum' value to 'num' num = sum; } //else print 'sum' value else System.out.println("Generic Root of the Given Number is: "+ sum); } } }
Output: Generic Root of the Given Number is: 8
Method-2: Java Program to Calculate Generic Root of a Number By Using User Input Value
Approach:
- Take a number input.
- Then take a while loop and continue it till the number is a one digit number.
- Inside first while loop take another while loop and find the sum of each digit of a number.
- Then out side inner while loop, check if the sum value is more than one digit number(means greater than equal to 10), then again that sum value becomes the number value and first while loop executes again.
- If sum value is a single digit number then print that sum value which is generic root value of original number.
Program:
import java.util.*; class Main { public static void main(String arg[]) { //Scanner class object created Scanner sc=new Scanner(System.in); //integer variable 'num', 'sum' and 'rem' declared int num, rem; int sum; //taking a number input from user System.out.print("Enter a number: "); num=sc.nextInt(); //continue while loop if 'num' is 2 digit value while(num >= 10) { sum=0; //continue while loop till 'num' value becomes 0 //find sum of each digit of a number while(num != 0) { rem = num % 10; sum=sum + rem; num=num/10; } //if 'sum' value is more than two digit if(sum >= 10) { //then assign 'sum' value to 'num' num = sum; } //else print 'sum' value else System.out.println("Generic Root of the Given Number is: "+ sum); } } }
Output: Enter a number: 965979 Generic Root of the Given Number is: 3
Method-3: Java Program to Calculate Generic Root of a Number By Using User Defined Method
Approach:
- Take a number input.
- Then call a user defined method by passing that number as parameter.
- Inside the method take a while loop and continue it till the number is a one digit number.
- Inside first while loop take another while loop and find the sum of each digit of a number.
- Then out side inner while loop, check if the sum value is more than one digit number(means greater than equal to 10), then again that sum value becomes the number value and first while loop executes again.
- If sum value is a single digit number then print that sum value which is generic root value of original number.
Program:
import java.util.*; class Main { public static void main(String arg[]) { //Scanner class object created Scanner sc=new Scanner(System.in); //taking a number input from user System.out.print("Enter a number: "); int num=sc.nextInt(); //call user defined method findGenericRoot() findGenericRoot(num); } public static void findGenericRoot(int num) { //continue while loop if 'num' is 2 digit value while(num >= 10) { int rem; int sum=0; //continue while loop till 'num' value becomes 0 //find sum of each digit of a number while(num != 0) { rem = num % 10; sum=sum + rem; num=num/10; } //if 'sum' value is more than two digit if(sum >= 10) { //then assign 'sum' value to 'num' num = sum; } //else print 'sum' value else System.out.println("Generic Root of the Given Number is: "+ sum); } } }
Output: Enter a number: 123 Generic Root of the Given Number is: 6
Access the Simple Java program for Interview examples with output from our page and impress your interviewer panel with your coding skills.
Related Java Programs: