0
我學習Ruby 我想創建一個簡單的腳本,將一個給定的數字爲羅馬數字(舊風格的羅馬數字)不能把字符串轉換成整數(類型錯誤)
我無法理解轉換爲什麼我得到了「不能把字符串轉換成整數(類型錯誤)」
def convert_to_roman number
romans_array = [[1000,'M'],[500,'D'],[100,'C'],[50,'L'],[10,'X'],[5,'V'][1,'I']]
converted_array = []
romans_array.each do |rom_num|
num = rom_num[0]
letter = rom_num[1]
if number > num
times = number/num
roman_letter = letter*times
converted_array.push(roman_letter)
number = number % num
end
end
converted_array.join()
end
number = ''
puts 'please write a number and I will convert it to old style Roman numerals :)'
puts 'p.s. to exit this program simply hit enter on an empty line, or type 0 and enter :)'
while number != 0
number = gets.chomp.to_i
puts convert_to_roman number
end
我的代碼是: https://github.com/stefanonyn/ruby-excercises/blob/master/roman_numerals.rb
你會看到,在文件的結尾註釋掉有一個老的修訂代碼,它實際上工作但有很多重複。
如果有人能澄清我爲什麼會得到上述錯誤,我將不勝感激。 請不要爲我寫代碼,我正在努力學習Ruby,我將不勝感激只是在轉移到下一步的一些支持。
非常感謝!
哦哇,謝謝! :) – superuseroi