Ruby keine implizite Konvertierung von Fixnum in String (TypeError)

Ich versuche eine Antwort auf die folgende Frage von Chris Pine ist "Programmieren Lernen" - Buch:

Schaltjahre. Schreiben Sie ein Programm, das fragt, für ein Startjahr und Endjahr und setzt dann alle Schaltjahre zwischen (und inklusive Ihnen, wenn Sie auch in Schaltjahren). Schaltjahre sind die Jahre, teilbar durch 4 (wie 1984 und 2004). Jedoch, Jahre, teilbar durch 100 sind keine Schaltjahre (z.B. 1800-und 1900 -), es sei denn, Sie sind auch teilbar durch 400 (wie 1600 und 2000, die in der Tat waren Schaltjahre). Was für ein Durcheinander!

Bekomme ich die folgende Fehlermeldung, wenn ich mein code:

leap_year.rb:12:in +': no implicit conversion of Fixnum into String (TypeError)
from leap_year.rb:12:in
'

Hier ist mein code:

#leap years

puts 'What is the starting year?'
starting_year = gets.chomp
puts 'What is the ending year?'
ending_year = gets.chomp

while starting_year <= ending_year
  if starting_year%4 == 0 && (starting_year%100 != 0 && starting_year%400 == 0)
    puts starting_year 
  end 
  starting_year+=1
end

InformationsquelleAutor der Frage stecd | 2013-12-03

Schreibe einen Kommentar