The java.math.BigInteger.divide(BigInteger val) is used to calculate the division of two BigIntegers. BigInteger class internally uses array of integers for processing, the operation on object of BigIntegers are not as fast as on primitives. This method performs an operation upon the current BigInteger by which this method is called and BigInteger passed as the parameter.
Syntax:
public BigInteger divide(BigInteger val)
Parameters: This method accepts a parameter val which is the value that divides this BigInteger.
Return value: This method returns a BigInteger which holds division (this / val) in Integer (non – floating point value) i.e. it rounds off the result to its floor value.
Exception: The parameter val must not be 0 otherwise Arithmetic Exception is thrown.
Below programs is used to illustrate the divide() method of BigInteger.
Example 1:
import java.math.BigInteger;
public class GFG {
public static void main(String[] args)
{
BigInteger div;
String input1 = "400000000000000000"
+ "000000000000000000" ;
String input2 = "8000000" ;
BigInteger a
= new BigInteger(input1);
BigInteger b
= new BigInteger(input2);
div = a.divide(b);
System.out.println( "The division of\n"
+ a + " \nby\n" + b + " "
+ "\nis\n" + div);
}
}
|
Output:
The division of
400000000000000000000000000000000000
by
8000000
is
50000000000000000000000000000
Example 2: To demonstrate how it rounds off the result
import java.math.BigInteger;
public class GFG {
public static void main(String[] args)
{
BigInteger div;
String input1 = "456216545" ;
String input2 = "21255132" ;
BigInteger a
= new BigInteger(input1);
BigInteger b
= new BigInteger(input2);
div = a.divide(b);
System.out.println( "The division of\n"
+ a + " \nby\n" + b + " "
+ "\nis " + div);
double d = Double.parseDouble(input1)
/ Double.parseDouble(input2);
System.out.print( "Using double result is " + d);
}
}
|
Output:
The division of
456216545
by
21255132
is 21
Using double result is 21.46383024109189
Example 3: To demonstrate Exception thrown when divided by 0
import java.math.BigInteger;
public class GFG {
public static void main(String[] args)
{
BigInteger div;
String input1 = "456216545"
+ "452133155" ;
String input2 = "0" ;
BigInteger a
= new BigInteger(input1);
BigInteger b
= new BigInteger(input2);
try {
div = a.divide(b);
System.out.println( "The division of\n"
+ a + " \nby\n" + b + " "
+ "\nis\n" + div + "\n" );
}
catch (ArithmeticException e) {
System.out.println(e);
}
}
}
|
Output:
java.lang.ArithmeticException: BigInteger divide by zero
Reference: https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/math/BigInteger.html#divide(java.math.BigInteger)
Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape,
GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out -
check it out now!
Last Updated :
07 Jun, 2019
Like Article
Save Article