0
respostas

Questão 7 : verificar se número é primo

A Solução apresentada pelo Instrutor é a seguinte:

Solicitamos o número

num = int(input("Digite o número: "))

Assumimos que o número é primo até que se prove o contrário

eh_primo = True

Números abaixo de 2 não são primos

if num <= 1 : eh_primo = False

O 1 n é primo pq n tem dois fatores pra aplicar a lógica

else: for i in range(2, num): # Se o número for divisível por qualquer número dentro deste intervalo, # ele não é primo, portanto, mudamos a variável 'eh_primo' para False e saímos do loop.

    if num % i == 0:
        eh_primo = False
        break

Verifica se 'eh_primo' ainda é True, o que significa que o número passou pelo loop

sem ser divisível por nenhum número além de 1 e ele mesmo.

if eh_primo: # Se for o caso, o número é primo. print(f'O número {num} é primo') else: # Caso contrário, o número não é primo. print(f'O número {num} não é primo')

Minha dúvida é porque que na linha if num % i == 0, a lógica é considerada que o número não é primo, se o % indica o resto da divisão ser 0. Por exemplo, Se 3 % 3 dá 0, então, até onde entendi, a lógica se aplica. Não entendi porque que ali deve ser colocado que a condiçao de Primo seja False.