Saltar al contenido
Portada » Obtener Números Primos Java

Obtener Números Primos Java

Los números primos son aquellos naturales mayores que uno y que solo son divisibles por si mismos y por la unidad, aprende a usarlos en Java. Los números primos son la base de todos los números. Cualquier número natural o bien es primo o puede descomponerse en factores primos. Por tanto, si conocemos los números primos, ¡conocemos todos los números!.

Los veinte primeros números primos son: 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67 y 71.

Número primo en Java

La función esPrimo() que te presentamos a continuación sirve para calcular si un número es primo en Java. Utiliza la función módulo para saber si un número es divisible por otro, en caso de que el resto de la división sea cero.

private boolean esPrimo(int numeroAEvaluar) 
{
    boolean primo=true;

    if(numeroAEvaluar > 2)
    {
        for(int i=2; i<numeroAEvaluar; i++)
        {
            if(numeroAEvaluar % i ==0)
            {
                primo=false;
                break;
            }
        }
    }

    return primo;
}

Ejemplo para generar números primos en Java

Te mostramos un algoritmo en Java para imprimir por pantalla los N primeros números primos. El programa incluye la función esPrimo(), esta función recibe como parámetro un número entero y devuelve verdadero o falso en caso de que sea primo o no.

private void obtenerNPrimerosPrimos(int nPrimos) 
{
    int primosEncontrados=0;
    boolean fin=false;

    for(int i=2; !fin; i++)
    {
        if(esPrimo(i))
        {
            System.out.println(i);

            primosEncontrados++;

            if(primosEncontrados==nPrimos)
            {
                fin=true;
            }
        }
    }

}

private boolean esPrimo(int numeroAEvaluar) 
{
    boolean primo=true;

    if(numeroAEvaluar > 2)
    {
        for(int i=2; i<numeroAEvaluar; i++)
        {
            if(numeroAEvaluar % i ==0)
            {
                primo=false;
                break;
            }
        }
    }

    return primo;
}

Coste computacional

Los algoritmos de factorización de un número en primos son de un coste computacional muy alto. Los algoritmos criptográficos como RSA se basan en estos sistemas para el cálculo de claves. A día de hoy estos algoritmos basados en números primos grandes siguen siendo seguros, a menos hasta que se desarrolle la computación cuántica.


Otros algoritmos matemáticos

AlgoritmoDescripción
Sucesión de FibonacciAprende a programar en Java la famosa sucesión de Fibonacci
Números PrimosAlgoritmo de cálculo en Java para saber si un número es primo
FactorialCálculo del factorial de un número en Java
Número PiAprende a calcular Pi en Java
Número eNúmero e, algoritmo en Java
Raíz cuadradaDesarrollo en Java del algoritmo raíz cuadrada
Números PerfectosDetermina en Java si un número es “perfecto”
Conversión binario – hexadecimalConversor binario a hexadecimal en Java
Generación de números aleatoriosGenerar números aleatorios entre 1 y 100, ejemplos prácticos
Matrices en JavaCrea una matriz en Java y manéjala con soltura
Calculadora en JavaEjemplo sencillo para montar una calculadora en java con interfaz básica

Recursos básicos Java

AsuntoDescripción
Tutorial básico y sintaxisTutorial básico Java y sintaxis. Aprende los fundamentos del lenguaje.
Hilos (Threads)Aprende a manejar hilos y las cuestiones básicas de la concurrencia
Funciones LambdaAquí te enseñamos las nociones más importantes para arrancas con funciones lambda
PalíndromosPrograma de ejemplo para el uso de palíndromos en Java.
Máquina Virtual de JavaTe explicamos el funcionamiento de la máquina virtual de java (Java Virtual Machine – JVM)
JDK, JRE y JVMDiferencias entre el JDK, JRE y JVM.
Mejores libros Java en EspañolHazte con los mejores libros Java para aprender paso a paso y profundizar en las mejores prácticas
TensorFlowManejo del API de TensorFlow para la construcción de grafos de operaciones y su ejecución
Tutorial Log4jTutorial para el manejo de Log4j, herramienta ágil y flexible para la gestión de Logs en Java
Java SecurityEntiende y aplica las posibilidades que da Java para mantener la seguridad
Tutorial JConsoleAprende los conceptos básicos de monitorización de procesos Java con JConsole
JavaFXTutorial de JavaFX, librería gráfica moderna para construcción de GUIs en móvil, escritorio y web.
Estructuras de datos en JavaExplicación y ejemplos de las estructuras de datos más importantes: listas, pila, cola, arbol.
JavaapiConjunto de clases, interfaces, métodos y paquetes que forman parte de la plataforma Java estándar
Algoritmo HuffmanMétodo eficiente para codificar datos, asignando códigos más cortos a los caracteres más frecuentes