GCD (Greatest Common Divisor) or HCF (Highest Common Factor) of two numbers is the largest number that divides both of them. The java.math.BigInteger.gcd(BigInteger val) method is used to calculate gcd of two BigIntegers. This method calculates gcd upon the current BigInteger by which this method is called and BigInteger passed as parameter
Syntax:
public BigInteger gcd(BigInteger val)
Parameters: This method accepts a parameter val which is one of the numbers out of two whose gcd is to be calculated. The number should be of BigInteger type.
Return value: This method returns a BigInteger which holds the calculated gcd of two BigIntegers.
Below program is used to illustrate the gcd() method of BigInteger.
Example 1:
// Java program to demonstrate // gcd() method of BigInteger import java.math.BigInteger; public class GFG { public static void main(String[] args) { // BigInteger object to store the result BigInteger result; // For user input // Use Scanner or BufferedReader // Two objects of String created // Holds the values to calculate gcd String input1 = "54" ; String input2 = "42" ; // Creating two BigInteger objects BigInteger a = new BigInteger(input1); BigInteger b = new BigInteger(input2); // Calculate gcd result = a.gcd(b); // Print result System.out.println( "The GCD of " + a + " and " + b + " is " + result); } } |
The GCD of 54 and 42 is 6
Example 2:
// Java program to demonstrate // gcd() method of BigInteger import java.math.BigInteger; public class GFG { public static void main(String[] args) { // BigInteger object to store result BigInteger result; // For user input // Use Scanner or BufferedReader // Two objects of String // Holds the values to calculate gcd String input1 = "4095484568135646548" ; String input2 = "9014548534231345454" ; // Creating two BigInteger objects BigInteger a = new BigInteger(input1); BigInteger b = new BigInteger(input2); // Calculate gcd result = a.gcd(b); // Print result System.out.println( "The GCD of " + a + " and " + b + " is " + result); } } |
The GCD of 4095484568135646548 and 9014548534231345454 is 2