Requisito previo: Conceptos básicos de BigInteger
El método modPow() devuelve el inverso multiplicativo modular de este, mod m. Este método arroja una ArithmeticException si m <= 0 o si no tiene un módulo inverso multiplicativo m (es decir, mcd(this, m) != 1).
Sintaxis:
public BigInteger modInverse(BigInteger m)
Parámetros: m – el módulo.
Valor de retorno: este método devuelve un objeto BigInteger cuyo valor es ((this)^(-1) mod m).
Excepción:
- ArithmeticException – m <= 0, o este BigInteger no tiene módulo inverso multiplicativo m (es decir, este BigInteger no es primo relativo a m).
Los siguientes programas ilustran el método BigInteger.modInverse():
Programa 1 :
import java.math.*; import java.util.Scanner; public class GFG { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // create 2 BigInteger objects BigInteger biginteger1, biginteger2, result; // Initialize all BigInteger Objects biginteger1 = new BigInteger("8"); biginteger2 = new BigInteger("21"); // perform modInverse operation on biginteger1 using biginteger2. result = biginteger1.modInverse(biginteger2); String expression = biginteger1 + " ^ -1 % " + biginteger2 + " = " + result; // print result value System.out.println(expression); } }
Salida :
8 ^ -1 % 21 = 8
Programa 2:
import java.math.*; import java.util.Scanner; public class GFG { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // create 2 BigInteger objects BigInteger biginteger1, biginteger2, result; // Initialize all BigInteger Objects biginteger1 = new BigInteger(88882); biginteger2 = new BigInteger(22224); // perform modInverse operation on biginteger1 using biginteger2. result = biginteger1.modInverse(biginteger2); String expression = biginteger1 + " ^ -1 % " + biginteger2 + " = " + result; // print result value System.out.println(expression); } }
Producción :
Exception in thread "main" java.lang.ArithmeticException: BigInteger not invertible. at java.math.MutableBigInteger.modInverse(Unknown Source) at java.math.MutableBigInteger.mutableModInverse(Unknown Source) at java.math.BigInteger.modInverse(Unknown Source) at BigInteger.GFG2.main(GFG2.java:23)
Referencia: https://docs.oracle.com/javase/7/docs/api/java/math/BigInteger.html#modInverse(java.math.BigInteger)
Publicación traducida automáticamente
Artículo escrito por AmanSingh2210 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA