Open in App
Not now

BigInteger gcd() Method in Java with Examples

• Last Updated : 04 Apr, 2019

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); ` `    ``} ` `} `

Output:

```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); ` `    ``} ` `} `

Output:

The GCD of 4095484568135646548 and 9014548534231345454 is 2

My Personal Notes arrow_drop_up
Related Articles