Questao 5 - Faça um programa que, ao inserir um número qualquer, cria uma lista contendo todos os números primos entre 1 e o número digitado.
abaixo o meu codigo q n está funcionando.
Questao 5 - Faça um programa que, ao inserir um número qualquer, cria uma lista contendo todos os números primos entre 1 e o número digitado.
abaixo o meu codigo q n está funcionando.
Boa noite. Segue minha sugestão:
lista_primo = []
valor = int(input('digite um valor: '))
# Considerando que 1 não é número primo e não tem primo entre 1 e 2, só a partir do número 3 haverá primos entre 1 e o número informado:
if valor <= 2:
print(f'Não existem números primos entre 1 e o valor informado.')
for num1 in range (2, valor): # Início 2 pq só vamos acrescentar à lista valores a partir do 2
cont = 0 # O contador deve ficar aqui para ele pegar o valor zero novamente, senão fica acumulando para os próximos valores de num1
for num2 in range (2, num1): # Início 2 pq não vamos testar divisão por 1. Final deve ser num1 e não valor
if num1%num2 == 0:
cont +=1
if cont == 0: # como não estamos considerando o 1 e nem o próprio número, não pode ter nenhum outro com divisão exata
lista_primo.append(num1)
print(f'Lista de números primos entre 1 e o valor informado: {lista_primo}')