Skip to content

Instantly share code, notes, and snippets.

@dieguesmosken
Last active May 15, 2023 13:22
Show Gist options
  • Save dieguesmosken/5fce07e3a04e355092e06ba7dbcf25f1 to your computer and use it in GitHub Desktop.
Save dieguesmosken/5fce07e3a04e355092e06ba7dbcf25f1 to your computer and use it in GitHub Desktop.
Verificador de Números Primos e Divisores

Verificador de Números Primos e Divisores


Este Gist contém um código em Python que verifica se um número é primo ou não e, caso não seja, mostra todos os seus divisores.

O código inicia solicitando ao usuário que insira um número inteiro positivo. Em seguida, ele verifica se o número é maior que 1, pois números primos são definidos como aqueles que são maiores do que 1 e têm apenas dois divisores: 1 e ele mesmo.

Se o número for maior que 1, o código itera por todos os possíveis divisores entre 2 e a raiz quadrada do número. Durante a iteração, ele verifica se o número é divisível por algum desses valores. Se encontrar um divisor, o código imprime uma mensagem informando que o número não é primo e exibe os divisores encontrados. Caso contrário, ele imprime uma mensagem informando que o número é primo.

Caso o número seja menor ou igual a 1, o código também imprime uma mensagem informando que o número não é primo, já que não atende à definição de número primo.

Espero que esse código seja útil para verificar se um número é primo e mostrar seus divisores caso não seja. Sinta-se à vontade para usá-lo e modificá-lo conforme suas necessidades.

# numeros primos, por t.me/dieguesmosken
numero = int(input("Digite um numero para saber se é primo: "))
divisores = []
for i in range(1, numero+1):
if numero % i == 0:
divisores.append(i)
if len(divisores) == 2:
print ("O numero é primo divisivel por ",divisores)
else:
print ("O numero não é primo pois é divisivel por: \n",divisores)
import math
def verificar_primo(numero):
if numero <= 1:
return False
for i in range(2, int(math.sqrt(numero)) + 1):
if numero % i == 0:
return False
return True
def encontrar_divisores(numero):
divisores = []
for i in range(1, numero + 1):
if numero % i == 0:
divisores.append(i)
return divisores
def main():
numero = int(input("Digite um número inteiro positivo: "))
if verificar_primo(numero):
print(f"O número {numero} é primo.")
else:
print(f"O número {numero} não é primo. Divisores: {encontrar_divisores(numero)}")
if __name__ == "__main__":
main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment