Ir ao conteúdo
  • Cadastre-se

Python Problema no código para retornar números primos


Posts recomendados

num = []
tam_vet = int(input('tamanho do vetor: '))
for i in range(tam_vet):
    num2 = int(input())
    num.append(num2)
for ind, x in enumerate(num):
    if x > 1:
        d = 2
        verifica = True
        if x != 2 and x % d == 0:
            verifica = False
        d += 1
        if verifica:
            print(f'numero primo = {x}\nposição no vetor = {ind}')
            
# Acho que assim esta certo            
num = []
tam_vet = int(input('tamanho do vetor: '))
for i in range(tam_vet):
    num2 = int(input())
    num.append(num2)
for ind, x in enumerate(num):
    if x > 1:
        d = 2
        while x % d != 0 and d <= x/2:
            d += 1
        if x != 2 and x % d == 0:
            verifica = False
        else:
            verifica = True
        if verifica:
            print(f'numero primo = {x}\nposição no vetor = {ind}')
           

retornando números não primos como primos
alguém sabe me dizer o motivo?

Link para o comentário
Compartilhar em outros sites

O que você quer saber é se um número é primo?🤔

 

Citação

Números primos são os números naturais que têm apenas dois divisores diferentes: o 1 e ele mesmo.

 

Dito isso, basta testar no laço a divisão de um dado número lá no seu input, se a divisão dele dentro do range informado for maior que 2, ele já não é primo.

 

Tem um trecho no seu código que eu não sei o que ele faz ali, pois ele apenas cria um "prompt de input", esperando entrar manualmente uma informação que está indefinida. Veja

Citação

num2 = int(input())

Seu programa para ai.

 

Me explica melhor sua dúvida.👍

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...