Мой вариант:
phrase = STDIN.gets.encode("UTF-8").to_lat.chomp
puts phrase
Ваш вариант:
input = gets.encode("UTF-8").chomp
puts input.to_lat
В этих двух строчках в простой задаче принципиальной разницы нет, ваш вариант чуть лучше т. к. явно указывает на объект STDIN
.
Но чисто стилистически лучше сперва подготовить строчку к обработке (отрезать перевод строки chomp
).
И если в большой программе транслитерация это только один из способов показать строчку, то лучше хранить исходные данные, а преобразовывать по мере необходимости (как в нашем варианте).