Método BigInteger isProbablePrime() en Java con ejemplos

El método java.math.BigInteger .isProbablePrime(intcertidumbre) se usa para saber si este BigInteger es probablemente primo o si es definitivamente compuesto. Este método busca números primos o compuestos en el BigInteger actual mediante el cual se llama a este método y devuelve un valor booleano. Devuelve verdadero si este BigInteger es probablemente primo, falso si definitivamente es compuesto. Si la certeza es <= 0, se devuelve verdadero.

Sintaxis:

public boolean isProbablePrime(int certainty)

Parámetros: Este método acepta un parámetro obligatorio de certeza que es una medida de la incertidumbre que es aceptable para el usuario. Esto se debe al hecho de que BigInteger es un número muy grande y encontrar exactamente si es primo es muy difícil y costoso. Por lo tanto, se puede decir que este método verifica el número primo de este BigInteger en función de un valor de umbral (1 – 1/2 certeza ).

Valor devuelto: este método devuelve un valor booleano que indica si este BigInteger es primo o no. Devuelve verdadero si este BigInteger es probablemente primo, falso si definitivamente es compuesto.

El siguiente programa se usa para ilustrar el método isProbablePrime() de BigInteger.

Ejemplo 1:

// Java program to demonstrate
// isProbablePrime() method of BigInteger
  
import java.math.BigInteger;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // Boolean variable to store the result
        boolean result;
  
        // Creates one BigInteger object
        BigInteger a
            = new BigInteger(
                "95848961698036841689418631330196");
  
        // When certainty is one,
        // it will check number for prime or composite
        result = a.isProbablePrime(1);
        System.out.println(a.toString()
                           + " with certainty 1 "
                           + result);
  
        // When certainty is zero,
        // it is always true
        result = a.isProbablePrime(0);
        System.out.println(a.toString()
                           + " with certainty 0 "
                           + result);
  
        // When certainty is negative,
        // it is always true
        result = a.isProbablePrime(-1);
        System.out.println(a.toString()
                           + " with certainty -1 "
                           + result);
    }
}
Producción:

95848961698036841689418631330196 with certainty 1 false
95848961698036841689418631330196 with certainty 0 true
95848961698036841689418631330196 with certainty -1 true

Ejemplo 2:

// Java program to demonstrate
// isProbablePrime() method of BigInteger
  
import java.math.BigInteger;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // Boolean variable to store the result
        boolean result;
  
        // Creates one BigInteger object
        BigInteger a
            = new BigInteger(
                "654561561356879113561");
  
        // When certainty is one,
        // it will check number for prime or composite
        result = a.isProbablePrime(1);
        System.out.println(a.toString()
                           + " with certainty 1 "
                           + result);
  
        // When certainty is zero,
        // it is always true
        result = a.isProbablePrime(0);
        System.out.println(a.toString()
                           + " with certainty 0 "
                           + result);
  
        // When certainty is negative,
        // it is always true
        result = a.isProbablePrime(-1);
        System.out.println(a.toString()
                           + " with certainty -1 "
                           + result);
    }
}
Producción:

654561561356879113561 with certainty 1 false
654561561356879113561 with certainty 0 true
654561561356879113561 with certainty -1 true

Referencia: https://docs.oracle.com/javase/9/docs/api/java/math/BigInteger.html#isProbablePrime(int)

Publicación traducida automáticamente

Artículo escrito por Rajnis09 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 *