Espacio publicitario (banner)
AD

¿Ya dominas lo básico? Un curso estructurado de Python es la vía rápida para dar el salto.

Ver cursos de Python en Udemy

Enlace de afiliado. No te cuesta nada extra.

🐍Lecciones de Python
Lección 61 / 69

Comprobar si un número es primo

En esta lección verás un algoritmo para comprobar si un número es primo, para entender una forma eficiente de hacerlo. Está pensada para quien ha buscado «comprobar si un número es primo en Python».

Que un número sea primo (divisible solo entre 1 y él mismo) se puede determinar comprobando si es divisible por algún número desde el 2 hasta «su raíz cuadrada». Si ninguno lo divide exactamente, es primo. La idea clave es que detenerse en la raíz cuadrada, en lugar de comprobar todos los números, reduce enormemente la cantidad de cálculo necesaria.

El código de ejemplo usa el rango range(2, int(n ** 0.5) + 1), es decir, recorre solo «hasta la raíz cuadrada». n ** 0.5 es una forma de calcular una raíz cuadrada en Python; math.sqrt() es otra opción. Compara los resultados para 17 y 18.

Un error habitual al empezar es no entender el razonamiento por el que basta con comprobar hasta la raíz cuadrada. Se apoya en que, en cualquier pareja de números que divide exactamente a otro, uno siempre es menor o igual que la raíz cuadrada y el otro mayor o igual, así que comprobar el rango pequeño es suficiente.

Es una propiedad matemática importante que sustenta también técnicas criptográficas, y dar con un algoritmo de comprobación eficiente es uno de los fundamentos de la informática. Existe además una técnica más avanzada para encontrar muchos primos de golpe, llamada criba de Eratóstenes.

Python
SALIDA

💡 El motor de Python puede tardar unos segundos en cargarse la primera vez que ejecutas código.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)