Olá
gostaria de proteger a função pede_dificuldade de forma que o usuário ao entrar com um número maior que 5 apareça uma mensagem de erro e peça novamente para que insira a dificuldade.
Estou tentando fazer isso com um loop do, porém ao entrar com um número maior que 5 aparece a mensagem de erro, mas ao entrar com um número de 1 a 5 entro em um loop infinito.
Como soluciono?
Outra dúvida, na verdade precisaria ser um teste em que só aceite a entrada de uma variável de valor entre 1 e 5. Qualquer outro valor deve aparecer uma mensagem de erro! Como faço isso?
Abaixo o código que fiz.... eu sei que está errado, mas não estou conseguindo pensar em nada melhor...
def pede_dificuldade
puts "Qual o nível de dificuldade?"
puts "(1) Muito fácil (2) Fácil (3) Normal (4) Difícil (5) Impossível"
puts "Escolha: "
loop do
dificuldade = gets.to_i
if dificuldade > 5
puts "A dificuldade deve ser inserida em um número de 1 a 5. Escolha novamente:"
end
end
dificuldade = gets.to_i
end