Java 8 | Método BigInteger divideAndRemainder() con ejemplos

java.math.BigInteger.divideAndRemainder(BigInteger val) se introdujo en Java 8. Este método devuelve una array de dos BigInteger después de aplicar la operación de división entre el BigInteger que llama a este método y el BigInteger pasado como parámetro al otro método. Aquí, First BigInteger de la array representa el resultado de la división (this / val) y Second BigInteger representa el resto de esta operación de división (this % val).

Sintaxis:

public BigInteger[] divideAndRemainder(BigInteger val)

Parámetros: este método toma un valor de parámetro obligatorio de tipo BigInteger , que actúa como divisor para aplicar la operación de división.

Valor de retorno: este método devuelve una array de dos BigInteger que contiene el cociente (this / val) como primer elemento y el resto (this % val) como segundo elemento.

Excepción: el método lanza ArithmeticException si se pasa nulo o 0 en el parámetro.

Ejemplo:

Input: 42245, 23
Output: [1836, 17]

Input: 25556, 444
Output: [57, 248]

Explanation: In input two BigInteger are given.
The first one is the dividend, which calls the method,
and the second is the divisor, which is passed as parameter.
When applying division operation, as a result, 
an array of quotient and remainder is returned as output.
These are also of BigInteger type

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

Programa 1:

// Java program to demonstrate divideAndRemainder() method
  
import java.math.*;
  
public class GFG {
  
    public static void main(String[] args)
    {
        // Creating a BigInteger object
        BigInteger dividend = new BigInteger("25556");
        BigInteger divisor = new BigInteger("444");
  
        // applying divideAndRemainder() method
        BigInteger[] answers = dividend.divideAndRemainder(divisor);
  
        // print results
        System.out.println("Dividend : " + dividend);
        System.out.println("Divisor : " + divisor);
        System.out.println("Quotient  : " + answers[0]);
        System.out.println("Remainder : " + answers[1]);
    }
}
Producción:

Dividend : 25556
Divisor : 444
Quotient  : 57
Remainder : 248

Programa 2:

// Java program to demonstrate divideAndRemainder() method
  
import java.math.*;
  
public class GFG {
  
    public static void main(String[] args)
    {
        // Creating a BigInteger object
        BigInteger dividend = new BigInteger("32345678987");
        BigInteger divisor = new BigInteger("1537862842");
  
        // applying divideAndRemainder() method
        BigInteger[] answers = dividend.divideAndRemainder(divisor);
  
        // print results
        System.out.println("Dividend : " + dividend);
        System.out.println("Divisor : " + divisor);
        System.out.println("Quotient  : " + answers[0]);
        System.out.println("Remainder : " + answers[1]);
    }
}
Producción:

Dividend : 32345678987
Divisor : 1537862842
Quotient  : 21
Remainder : 50559305

Programa 3: Para demostrar ArithmeticException

// Java program to demonstrate divideAndRemainder() method
  
import java.math.*;
  
public class GFG {
  
    public static void main(String[] args)
    {
        // Creating a BigInteger object
        BigInteger dividend = new BigInteger("32345678987");
  
        // Creating 0 as divisor
        BigInteger divisor = new BigInteger("0");
  
        // print both numbers
        System.out.println("Dividend : " + dividend);
        System.out.println("Divisor : " + divisor);
  
        try {
            // applying divideAndRemainder() method
            BigInteger[] answers = dividend.divideAndRemainder(divisor);
  
            // print results
            System.out.println("Quotient  : " + answers[0]);
            System.out.println("Remainder : " + answers[1]);
        }
        catch (Exception e) {
            System.out.println("Exception: " + e);
        }
    }
}
Producción:

Dividend : 32345678987
Divisor : 0
Exception: java.lang.ArithmeticException: BigInteger divide by zero

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