Método BigInteger mod() en Java

El método java.math.BigInteger.mod(BigInteger big) devuelve un BigInteger cuyo valor es igual a (this BigInteger modfunction big(BigInteger pasó como parámetro)). En otras palabras, podemos decir que este método devuelve el valor después de realizar (this % grande) paso. La operación mod encuentra el resto después de la división de este BigInteger por otro BigInteger pasado como parámetro.

java.math.BigInteger.mod(BigInteger big) y java.math.BigInteger.remainder(BigInteger val) ambas funciones encuentran el resto, pero la operación mod siempre devuelve un BigInteger no negativo.

Sintaxis:

public BigInteger mod(BigInteger big)

Parámetro: La función acepta un único parámetro obligatorio grande que especifica el objeto BigInteger por el que queremos dividir este objeto bigInteger.

Valor devuelto: el método devuelve el BigInteger que es igual a este BigInteger mod big (BigInteger pasado como parámetro).

Excepción: el método lanza ArithmeticException cuando grande ≤ 0

Ejemplos:

Input: BigInteger1=321456, BigInteger2=31711
Output: 4346
Explanation: BigInteger1.mod(BigInteger2)=4346. The divide operation between 
321456 and 31711 returns 4346 as remainder.

Input: BigInteger1=59185482345, BigInteger2=59185482345
Output: 0
Explanation: BigInteger1.mod(BigInteger2)=0. The divide operation between 
59185482345 and 59185482345 returns 0 as remainder.

Los siguientes programas ilustran el método mod() de la clase BigInteger:

Ejemplo 1:

// Java program to demonstrate mod() method of BigInteger
  
import java.math.BigInteger;
  
public class GFG {
  
    public static void main(String[] args)
    {
  
        // Creating 2 BigInteger objects
        BigInteger b1, b2;
  
        b1 = new BigInteger("321456");
        b2 = new BigInteger("31711");
  
        // apply mod() method
        BigInteger result = b1.mod(b2);
  
        // print result
        System.out.println("Result of mod 
                 operation between " + b1
                 + " and " + b2 +
                 " equal to " + result);
    }
}
Producción:

Result of mod operation between 321456 and 31711 equal to 4346

Ejemplo 2: Cuando ambos tienen el mismo valor.

// Java program to demonstrate mod() method of BigInteger
  
import java.math.BigInteger;
  
public class GFG {
  
    public static void main(String[] args)
    {
  
        // Creating 2 BigInteger objects
        BigInteger b1, b2;
  
        b1 = new BigInteger("3515219485");
        b2 = new BigInteger("3515219485");
  
        // apply mod() method
        BigInteger result = b1.mod(b2);
  
        // print result
        System.out.println("Result of mod 
                 operation between " + b1
                 + " and " + b2 +
                 " equal to " + result);
    }
}
Producción:

Result of mod operation between 3515219485 and 3515219485 equal to 0

Ejemplo 3: programa que muestra una excepción cuando BigInteger pasado como parámetro es menor que cero.

// Java program to demonstrate mod() method of BigInteger
  
import java.math.BigInteger;
  
public class GFG {
  
    public static void main(String[] args)
    {
  
        // Creating 2 BigInteger objects
        BigInteger b1, b2;
  
        b1 = new BigInteger("3515219485");
        b2 = new BigInteger("-1711");
  
        // apply mod() method
        BigInteger result = b1.mod(b2);
  
        // print result
        System.out.println("Result of mod 
                 operation between " + b1
                 + " and " + b2 +
                 " equal to " + result);
    }
}

Producción:

Exception in thread "main" java.lang.ArithmeticException: BigInteger: modulus not positive
    at java.math.BigInteger.mod(BigInteger.java:2458)
    at GFG.main(GFG.java:17)

Referencia: https://docs.oracle.com/javase/7/docs/api/java/math/BigInteger.html#mod(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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *