Los primos hasta n
- O(n log n) · Difícil
- Plan completo
- Python
- JavaScript
- listas
- ciclos
- operaciones
Enunciado
Un número primo solo se puede dividir entre 1 y entre él mismo. El 1 no cuenta como primo: el primero es el 2.
Escribe una función que reciba un número n y regrese la lista de los primos desde 2 hasta n, de menor a mayor. Si n es primo, también entra. Con n menor que 2 no hay ninguno, así que regresas una lista vacía.
Un truco viejo para hacerlo sin dividir tanto: escribe todos los números del 2 al n y ve tachando los múltiplos de cada primo que encuentres. Lo que queda sin tachar es la respuesta.
Ejemplos
Nada antes del 2
1 → []
El primer primo
2 → [2]
Hasta 10
10 → [2, 3, 5, 7]
n es primo
13 → [2, 3, 5, 7, 11, 13]
Además de estas, el reto tiene pruebas ocultas que se revelan al enviar tu solución.
Empiezas con esto
Python
def primos_hasta(n):
passJavaScript
function primosHasta(n) {
}Se abre en el navegador, con el editor y las pruebas. Este reto es del plan completo; los de O(1) y O(log n) son gratis.