Мне кажется что там небольшая ошибка в вашем ответе. Вот в этом месте
if (proba - number).abs < 3 # ВОТ ТУТ
puts "Тепло"
else
puts "Холодно"
end
Ведь если попадется число которое при разности будет давать ровно "3", то тогда программа не сможет выдать ни одно из условий.Если я конечно не ошибаюсь.
Нет, там всё правильно:
if (proba - number).abs < 3
puts "Тепло"
else
puts "Холодно"
end
Если модуль разницы строго меньше трёх, то код выведет "Тепло", во всех остальных случаях (включая случай, когда модуль разницы равен 3), выведется "Холодно". Именно так работает конструкция if-else.
Прочитайте ещё раз про if в конспекте.