Программа задаёт вопрос с четырьмя вариантами ответа и запрашивает номер варианта ответа.
Анализ правильности ответа уже запрограммирован. Допиши обработку исключения ввода ответа.
Если пользователь вводит не число, например, «Денали», то программа печатает: «Ошибка! Введите номер правильного ответа», пока не будет получено число.

Ответы на вопрос
# ruby 3.2.2
def ask_question(question, answers, right_answer_index, wrong_answer_comment)
raise "Ошибка входящих данных" if answers.size < 2 || !right_answer_index.between?(0, answers.size-1) || question.empty?
right_answer = answers[right_answer_index]
answers.shuffle!
right_answer_index = answers.index(right_answer)
puts question
while true do
answers.each_index {|i| print("#{(i.zero? ? "" : ", ")}#{i + 1} - #{answers[i]}")}
puts
input = gets().strip.to_i
return 0 if input == right_answer_index + 1
if input.between?(1, answers.size)
puts "Нет. #{wrong_answer_comment}"
return
end
puts "Ошибка! Введите номер правильного ответа"
end
end
ask_question("Самая высокая гора?", ["Эльбрус", "Говерла", "Эверест", "Денали"], 2, "Эверест, 8848 метров")