Python - Hacer una lista de los números primos hasta el 10000

 
Vista:
sin imagen de perfil
Val: 28
Ha disminuido su posición en 4 puestos en Python (en relación al último mes)
Gráfica de Python

Hacer una lista de los números primos hasta el 10000

Publicado por Roberto (9 intervenciones) el 21/05/2020 22:52:01
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# programa para calcular los numeros primos hasta el 10000
# Elaborado en Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:43:06)
 
numero_primo_hasta = 10000
print("Los números primos hasta el ",numero_primo_hasta)
print("2  es un número primo posición 1") # 2 es el único primo que es par
numero = 3 # se comienza la evaluacion desde 3
cuenta_numero_primos = 1
while numero <= numero_primo_hasta :
    cuenta_divisor_exacto = 1
    for divisor in range(1,round((numero+1)/2)):
        if (numero % divisor) == 0 :
            cuenta_divisor_exacto += 1
    if cuenta_divisor_exacto == 2: # un numero primo tiene 2 divisores exactos
        cuenta_numero_primos += 1
        print(numero," es un número primo posición %d"%cuenta_numero_primos)
    numero += 2 # se consideran los números impares
 
print("Hasta el número %d hay %d números primos"%(numero_primo_hasta,cuenta_numero_primos))
#print("Hasta el número ",numero_primo_hasta," hay ",cuenta_numero_primos," números primos")
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
1
Responder
sin imagen de perfil
Val: 4
Ha disminuido su posición en 20 puestos en Python (en relación al último mes)
Gráfica de Python

Hacer una lista de los números primos hasta el 10000

Publicado por Victor (1 intervención) el 29/05/2020 04:36:35
Hola Roberto, en un curso que estoy haciendo que se encuentra por la web como 30 days of python planteaban el problema de imprimir los números primos desde 2 hasta 100 y lo que me ha gustado del curso es lo bien que te explica las varias posibilidades que tienen para resolver un problema y par lo que nos ocupa esta es una solución que afortunadamente la hicimos igual en los ejercicios que la web pone:

1
2
3
4
5
6
7
8
primos = []
for dividendo in range(2, 1001):     #Primos hasta 1000
        for divisor in range(2, dividendo):
                if dividendo % divisor == 0:
                        break
        else:
                primos.append(dividendo)
print(primos)

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar