Prévia do material em texto
Para implementar esse programa em Python, podemos seguir os seguintes passos:
1. **Definir a Função de Verificação de Números Primos:**
- Um número primo é aquele que é maior que 1 e que não possui divisores além de 1 e ele mesmo. Vamos criar uma função para verificar se um número é primo:
```python
def is_prime(num):
if num <= 1:
return False
if num == 2:
return True # 2 é primo
if num % 2 == 0:
return False # números pares maiores que 2 não são primos
for i in range(3, int(num**0.5) + 1, 2):
if num % i == 0:
return False
return True
```
Esta função verifica se o número é maior que 1, se é 2 (o único número primo par), se é divisível por 2 (excluindo números pares maiores que 2) e, finalmente, verifica divisibilidade até a raiz quadrada do número, o que otimiza o desempenho.
2. **Implementar o Programa Principal:**
- Vamos criar um loop infinito que solicita entrada do usuário para os números `n` e `m`, e em seguida imprime os números primos entre eles até que `n` ou `m` sejam menores ou iguais a 1:
```python
while True:
n = int(input("Digite o valor de n: "))
m = int(input("Digite o valor de m: "))
if n <= 1 or m <= 1:
break # Sai do loop se n ou m forem menores ou iguais a 1
start = min(n, m)
end = max(n, m)
prime_numbers = [num for num in range(start, end + 1) if is_prime(num)]
if prime_numbers:
print(f"Números primos entre {start} e {end}:")
print(prime_numbers)
else:
print(f"Não há números primos entre {start} e {end}.")
```
Neste código:
- O `while True:` inicia um loop infinito que só para quando `n` ou `m` forem menores ou iguais a 1.
- Os números `n` e `m` são lidos do usuário.
- Verificamos qual é o menor e o maior entre `n` e `m` para determinar os limites do intervalo.
- Utilizamos uma lista de compreensão para encontrar todos os números primos no intervalo determinado pelo usuário.
- Se houver números primos, eles são impressos; caso contrário, uma mensagem indicando a ausência de números primos é exibida.
3. **Execução e Finalização do Programa:**
- Para rodar o programa, basta executar o script Python. Ele solicitará continuamente os valores de `n` e `m` até que sejam fornecidos valores menores ou iguais a 1.
Este programa atende aos requisitos especificados, permitindo a entrada contínua de `n` e `m` enquanto imprime os números primos encontrados entre eles até que a condição de parada seja atendida.