From: Robert Klemme Date: 2012-12-11T21:22:59+09:00 Subject: Re: Leap year programing On Tue, Dec 11, 2012 at 9:50 AM, Hieu Le wrote: > This is my function: > > > > puts 'Begin year:' > beginyear = gets.chomp > puts 'End year:' > endyear = gets.chomp > puts 'The leap years between ' + beginyear + ' and ' + endyear + ':' > > beginyear = beginyear.to_i > endyear = endyear.to_i > if endyear < beginyear > puts 'Note: Begin year < End year' > else > while (beginyear <= endyear) > if > (((beginyear % 4 == 0) and (beginyear %100 !=0)) or > (beginyear % 400 == 0)) > puts beginyear.to_s > > end > (beginyear = beginyear.to_i + 1) > end > end Here's mine require 'date' puts 'Begin year:' beginyear = Integer(gets) puts 'End year:' endyear = Integer(gets) puts "Leap years between #{beginyear} and #{endyear}:" for y in beginyear..endyear puts y if Date.new(y, 1, 1).leap? end Cheers robert -- remember.guy do |as, often| as.you_can - without end http://blog.rubybestpractices.com/