Я изучаю Ruby и думал о создании Binary-> Decimal converter. Он получает двоичную строку и преобразуется в десятичный эквивалент. Есть ли способ отслеживать текущий шаг итерации в рубине, чтобы можно было удалить переменную «x»?Как отслеживать номер итерации при использовании each_char?
def convert(binary_string)
decimal_equivalent = 0
x=0
binary_string.reverse.each_char do |binary|
decimal_equivalent += binary.to_i * (2 ** x)
x+=1
end
return decimal_equivalent
end
он говорит, не определено метод символы для «0»: строка – unj2
Какую версию рубина вы используете? «ruby -version», чтобы узнать, –
Похоже, что в 1.8.7 добавлено строковое # chars. Я обновляю свой ответ с версией, которая работает с более ранними версиями. –