Aprende Java Aprende Php Aprende C++ Aprende HTML 5 Aprende JavaScript Aprende JSON Aprende MySQL Aprende SQLServer Aprende Visual Basic 6 Aprende PostgreSQL Aprende SQLite Aprende Redis Aprende Kotlin Aprende XML Aprende Linux VSC Aprende Wordpress Aprende Laravel Aprende VueJS Aprende JQuery Aprende Bootstrap Aprende Netbeans Aprende Android
Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube Sigueme en TikTok Sigueme en Whatsapp
Home / Java / Criba de Eratóstenes animado

Criba de Eratóstenes animado

Por jc mouse martes, octubre 8, 2019

Eratóstenes era un matemático griego del siglo  III a.C. el cual ideó una manera rápida de obtener todos los números primos (un número primo es aquel que sólo es divisible por 1 y por sí mismo) menores que un numero natural dado.  Este procedimiento consiste en una tabla con todos los números naturales comprendidos entre 2 y N (el uno no se toma en cuenta), al inicio del procedimientos, todos los números son considerados primos, a continuación se van tachando los números que no son primos de la siguiente manera:

  • Comenzando por el 2, se tachan todos sus múltiplos;
  • Comenzando de nuevo, cuando se encuentra un número entero que no ha sido tachado, ese número es declarado primo, y se procede a tachar todos sus múltiplos, así sucesivamente.
  • El proceso termina cuando el cuadrado del siguiente número confirmado como primo es mayor que N.

Este procedimiento se denomina Criba de Eratóstenes, el cual veremos cómo funciona paso a paso a continuación

Números primos entre 2 y 36 con la Criba de Eratóstenes

Empezamos colocando los números del 2 al 36 en una tabla. El 1 no lo colocamos ya que no se considera un número primo.

eratostenes animada

Primero, buscamos los múltiplos de 2 y los marcamos (exceptuando el 2, que sabemos que sólo tiene como divisores 1 y 2, así que es primo).

Algoritmo de busqueda primos

Ahora, de los que quedan, buscamos los múltiplos de 3 y los marcamos (exceptuando el 3, que es primo).

busca primos en java

Ahora es el turno de buscar los múltiplos de 5 (de 4 no haría falta, porque todos los múltiplos de 4 también son múltiplos de 2, así que ya los hemos marcado anteriormente). Dejamos el 5 sin marcar, ya que es primo.

multiplos de 5

La condición para parar de buscar, según el algoritmo, es de que N sea menor a la raíz cuadrada del total de números 0 lo que es lo mismo, que N*N < Total_Numeros. Es decir para nuestro ejemplo de 2 a 36, 5×5 < 36, si, pero 6*6 < 36, no, entonces dejamos de buscar y la tabla de primos es:

numeros primos en java codigo

A continuación se muestra la búsqueda para N = 120

Descarga el código fuente del programa utilizado en este post desde este <<ENLACE POBRE>>

enjoy!

Tags

Artículos similares

Abre una aplicación swing java desde el navegador de forma segura

Los mejores días del marco de java swing se han ido. Las aplicaciones de escritorio perdieron popularidad y todo está fo[...]

Incrustar reporte en formulario java

Jasperreport nos brinda su propio visor de reportes, sin embargo en ocasiones queremos mostrar los informes directamente[...]

Hangman: El juego del ahorcado en java

El Juego del ahorcado o Hangman, es un clásico juego de mesa que consiste en adivinar la palabra secreta, si no lo consi[...]

Ajustar imagen de fondo a diferentes resoluciones

Si diseñamos paginas web, nos habremos topado con el problema de colocar una imagen de fondo y que este se adapte a toda[...]

Crear plantillas personalizadas para Netbeans

Cuando llevamos tiempo programando vamos armando un librería personal de código que utilizamos con frecuencia en nuestro[...]

Botón en java de Windows 8 Modern UI

En este tutorial crearemos un botón con el estilo del nuevo windows 8 Modern UI que primero se conoció como Metro UI.  E[...]