десятичное число для перевода decimalNumber gets переменная для хранен

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
# десятичное число для перевода
decimalNumber = gets
# переменная для хранения перевода
binaryNumber = ""
# переменная для хранения промежуточных результатов
temp = decimalNumber
# пробегаемся неявным циклом, в ходе которого происходит деление числа temp на 2; записывается остаток от деления. Цикл будет выполняться лишь, пока temp больше нуля. Как только он станет меньше или равен нулю, выполнение цикла прекратится.
while temp > 0
# вычисляем остаток от деления на 2 и запоминаем его. С помощью метода .to_s преобразовываем в строку
binaryNumber += (temp % 2).to_s
# выполняем операцию деления на 2
temp = (temp / 2)
end
# разворачиваем строку-результат, выводим и получаем число в двоичной системе счисления.
p "#{decimalNumber} >> #{binaryNumber.reverse!}"