Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Sugestão] Exercício 7 - Números primos

Experimente rodar os códigos com os números 5, 0, 2 e 11 como exemplos

###Código do exercício###

#coletamos o número
num = int(input('Insira um número inteiro: '))

# números inteiros iguais ou abaixo de 1 não consideramos primos
if num > 1:
    for i in range(2, num):
        # verificamos todos os restos de divisões entre todos os números abaixo de num
        # se algum resto for 0, então ele é divisível por outro número além dele e 1
        if (num % i) == 0:
            print(f'{num} não é um número primo')
            break
        else:
            print(f'{num} é um número primo')
else:
    print(f'{num} não é um número primo')

###Colocando break depois do primeiro else e programando o 2 como primo###

#coletamos o número
num = int(input('Insira um número inteiro: '))

# números inteiros iguais ou abaixo de 1 não consideramos primos
if num > 1:
  if num == 2:
   print(f'{num} é um número primo')
  for i in range(2, num):
        # verificamos todos os restos de divisões entre todos os números abaixo de num
        # se algum resto for 0, então ele é divisível por outro número além dele e 1
        if (num % i) == 0:
            print(f'{num} não é um número primo')
            break
        else:
            print(f'{num} é um número primo')
else:
    print(f'{num} não é um número primo')

O segundo código está correto? e o primeiro do exercício?

1 resposta
solução!

Olá Luan, os códigos parecem estar certos, mas seu último código trata do erro para caso em que número (num) for igual a 2.

Talvez a saída dos códigos que não seja ideal para um usuário.

Deixo aqui a minha sugestão de como eu faria esse código, seguindo lógica semelhante (sem utilizar funções).

num = int(input('Insira um número inteiro: '))

eh_primo = True

if num < 2:
    eh_primo = False
else:
    for i in range(2, num):
      if (num % i) == 0:
        eh_primo = False
        break

if eh_primo:
  print(f'O número {num} é primo!')
else:
  print(f'O número {num} não é primo!')

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software