Wednesday, October 22, 2025
HomeLanguagesJavaBigInteger modPow() Method in Java

BigInteger modPow() Method in Java

Prerequisite: BigInteger Basics
The Java.math.BigInteger.modPow() method returns a BigInteger whose value is (thisexponent mod m ). 
If exponent == 1, the returned value is (this mod m) and if exponent < 0, the returned value is the modular multiplicative inverse of (this-exponent). The method throws an ArithmeticException if m <= 0.
 

Syntax:  

public BigInteger modPow(BigInteger exponent, BigInteger m)

Parameters: The method accepts two parameters.  

  • exponent: This parameter refers to the exponent.
  • m: This parameter refers to the modulus.

Return Value: The method returns a BigInteger object whose value is ( thisexponent mod m ).
 

Exceptions:  

  • ArithmeticException: If (m <= 0) or the exponent is negative and this BigInteger is not relatively prime to m.

Examples: 

Input: biginteger1 = 23895 
                        exponent = 15
                        biginteger2 = 14189
Output: 344
Explanation:
result = biginteger1.modPow(exponent, biginteger2)
23895^15 % 14189 = 344

Input: biginteger1 = 6547890621
       exponent = 4532415
       biginteger2 = 76543278906
Output: 1039609179
Explanation:
6547890621^4532415 % 76543278906 = 1039609179

Below program illustrates the Java.math.BigInteger.modPow() method: 
 

Java




// Code to illustrate modpow() method of BigInteger
import java.math.*;
import java.util.Scanner;
 
public class GFG {
 
    public static void main(String[] args)
    {
 
        // Create 3 BigInteger objects
        BigInteger biginteger1, biginteger2, result;
 
        // Initializing all BigInteger Objects
        biginteger1 = new BigInteger("23895");
        biginteger2 = new BigInteger("14189");
        BigInteger exponent = new BigInteger("15");
 
        // Perform modPow operation on the objects and exponent
        result = biginteger1.modPow(exponent, biginteger2);
        String expression = biginteger1 + "^" + exponent + " % "
                            + biginteger2 + " = " + result;
 
        // Displaying the result
        System.out.println(expression);
    }
}


Output: 

23895^15 % 14189 = 344

 

Reference: https://docs.oracle.com/javase/7/docs/api/java/math/BigInteger.html#abs()
 

RELATED ARTICLES

Most Popular

Dominic
32361 POSTS0 COMMENTS
Milvus
88 POSTS0 COMMENTS
Nango Kala
6728 POSTS0 COMMENTS
Nicole Veronica
11892 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11954 POSTS0 COMMENTS
Shaida Kate Naidoo
6852 POSTS0 COMMENTS
Ted Musemwa
7113 POSTS0 COMMENTS
Thapelo Manthata
6805 POSTS0 COMMENTS
Umr Jansen
6801 POSTS0 COMMENTS