Programa de Python para imprimir todos los números primos en un intervalo

Dados dos enteros positivos empiezan y terminan. La tarea es escribir un programa Python para imprimir todos los números primos en un intervalo.

Definición: Un número primo es un número natural mayor que 1 que no tiene más divisores positivos que 1 y él mismo. Los primeros números primos son {2, 3, 5, 7, 11, ….}.

La idea para resolver este problema es iterar el val de principio a fin usando un ciclo for y para cada número, si es mayor que 1, verifique si divide a n . Si encontramos algún otro número que divide, imprima ese valor.

A continuación se muestra la implementación de Python: 

Python3

# Python program to print all
# prime number in an interval
 
def prime(x, y):
    prime_list = []
    for i in range(x, y):
        if i == 0 or i == 1:
            continue
        else:
            for j in range(2, int(i/2)+1):
                if i % j == 0:
                    break
            else:
                prime_list.append(i)
    return prime_list
 
# Driver program
starting_range = 2
ending_range = 7
lst = prime(starting_range, ending_range)
if len(lst) == 0:
    print("There are no prime numbers in this range")
else:
    print("The prime numbers in this range are: ", lst)

Producción: 

The prime numbers in this range are: [2,3,5]

Complejidad temporal: O(N 2 ), donde N es el tamaño del rango.

Espacio Auxiliar: O(N).

La solución anterior se puede optimizar utilizando el Tamiz de Eratóstenes . Consulte imprimir números primos en un rango para obtener más detalles. 

Publicación traducida automáticamente

Artículo escrito por Shivam_k y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *