Nelson_Nunes
(usa Slackware)
Enviado em 24/10/2015 - 14:16h
gustavoip escreveu:
Como foi dito acima, um número primo é um número inteiro que tem apenas dois divisores, ele mesmo e módulo de 1, ou seja, -1 ou 1. Há métodos mais sofisticados pra achar primos, mas um algorítmo simples e funcional poderia ser algo do tipo.
Em Python:
def eh_primo(n):
if(abs(n)==1 or n==0): return(False)
for i in range(2,abs(n)): ### range(2,abs(n)) gera o intervalo [2,3,4,5,6....,n-1]
if(n%i==0): return(False) # n % i gera o resto da divisão de n por i.
# Se resto for 0, então podemos dizer que n é divisivel por i
return(True)
Olá gustavoip esta definição: "Um número inteiro é primo quando tem somente 2 divisores {1, p} deve ser evitada pois
Um número inteiro é primo quando tem somente 4 divisores {-1, 1, -p, p}
Agora se Tratando do conjunto dos números naturais esta definição esta correta.
Quando fiz a pergunta acima eu esperava dicas de como criar um algoritmo eficiente baseado em experiencias.