typestar

Prueba de primalidad en Python

División por tentativa: la prueba de primalidad más simple que vale la pena escribir.

def es_primo(n):
    if n < 2:
        return False
    if n % 2 == 0:
        return n == 2
    i = 3
    while i * i <= n:
        if n % i == 0:
            return False
        i += 2
    return True

Cómo funciona

  1. Descarta temprano los números menores que 2 y los pares salvo el 2.
  2. Prueba divisores impares hasta la raíz cuadrada.
  3. Cualquier divisor significa compuesto; ninguno, primo.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
11
Caracteres a escribir
139
Tokens
50
Ritmo de tres estrellas
90 tpm

Al ritmo de tres estrellas de 90 tokens por minuto, este intento toma unos 33 segundos.

Escribe este fragmento

Paso 7 de 7 en Control de flujo; paso 22 de 72 en Fundamentos del lenguaje.

← Anterior Siguiente →