3
respostas

Usuário digita número fora do intervalo de 1 a 3 para a dificuldade

Olá, como restringir para que o o usuário digite números de 1a 3 na escolha do grau de dificuldade?

3 respostas

Boa tarde Ronaldo, tu podes testar se o nível é >= 1 e <= 3 dentro de um laço while. Por exemplo,

    print("(1) Fácil (2) Médio (3) Difícil")
    while True:
        nivel = int(input("Defina o nível: "))
        if nivel >= 1 and nivel <= 3:
            break

Bom dia, Ronaldo. Tudo bem?

Você poderia ainda melhorar o exemplo do Marcio e colocar um warn a partir da importação da bilioteca warnings para printar um aviso ou erro falando para o usuário que ele deve selecionar o nível de dificuldade de um a 3, assim o usuário sabe qual é o problema e seleciona o certo ao invés de o código só ficar se repetindo:

import warnings

print("(1) Fácil (2) Médio (3) Difícil")

while True:
  nivel = int(input("Defina o nível: "))
  if nivel >= 1 and nivel <= 3:
    break
  else:
    warnings.warn('O nível de dificuldade deve ser entre 1 e 3!\n(1) Fácil (2) Médio (3) Difícil')

O resultado no console fica assim:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Espero que a gente tenha ajudado com essas ideias. Se tiver resolvido o problema poderia marcar como tópico resolvido pra gente saber, por gentileza?

No mais espero ter ajudado :)

bom eu coloquei uma outra dificuldade para quem digitar qualquer outro valor alem do intervalo, onde a pessoa tem apenas uma tentativa e um intervalo de 1000 possibilidades..