Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Java / Criba de Eratóstenes animado

Criba de Eratóstenes animado

Autor 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

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

JCPanel 3.0

JCPanel 3.0

Nueva versión de un viejo proyecto swing «JCMousePanel» que nos permitía agregar imágenes en los contenedores JPanel. En...

CUF: Código Único de Factura

CUF: Código Único de Factura

Este 2019 se implementara en Bolivia un nuevo Sistema de Facturación Electrónica con nuevas características y medidas de...

Introducción a la internacionalización de aplicaciones

Introducción a la internacionalización de aplicaciones

La internacionalización permite a las aplicaciones adaptarse a los diferentes idiomas y regiones sin necesidad de cambio...

MultiHilos: Comunicación Cliente/Servidor

MultiHilos: Comunicación Cliente/Servidor

En anteriores post construimos aplicaciones Cliente/Servidor los cuales intercambiaban mensajes de una forma secuencial...

Uso de Arrays: Ejemplo práctico

Uso de Arrays: Ejemplo práctico

En este post iremos conociendo de un modo práctico que es y como se utiliza un Array en java, para esto partiremos de un...

Creación de GUI con Matlab GUIDE

Creación de GUI con Matlab GUIDE

En este videotutorial se vera la creación de Interfaces Gráficas de Usuario (GUI) utilizando MatLab GUIDE herramienta vi...

Comparte lo que sabes

Categorias

Últimas entradas

En muchas ocasiones es necesaria la personalización de componentes java para que estos se adecuen a nuestros requerimien...

En este post mostramos como personalizar el Header (encabezado) de un componente JTable en Java colocando iconos, centra...

El JTable de Java es un gran componente para mostrar datos en una tabla de una forma rápida y sencilla, sin embargo en v...

En este post veremos un ejemplo sencillo de como descargar desde Internet archivos de cualquier tipo (*.jpg, *.png, *.gi...

Herramientas

Generador de Enlaces a Whatsapp