記事の内容
この記事では、Rubyを使って閏年の判定をします。
自分で関数を定義する場合と、Rubyに実装されている閏年の判定メソッドを使う場合の2つを紹介します。
閏年の定義
4で割り切れること。
100で割り切れて、400で割り切れる場合は閏年。
100で割り切れて、400で割り切れない場合は閏年ではない。
閏年を判定するメソッドを作成する
# 閏年の判定 | |
def leap_year?(year) | |
return true if year % 400 == 0 | |
return false if year % 100 == 0 | |
return true if year % 4 == 0 | |
return false | |
end | |
puts leap_year?(2000) | |
# true | |
puts leap_year?(2011) | |
# false | |
puts leap_year?(2012) | |
# true | |
puts leap_year?(2100) | |
# false | |
puts leap_year?(2200) | |
# false | |
puts leap_year?(2300) | |
# false | |
puts leap_year?(2400) | |
# true |
閏年を判定する便利メソッドを使う
#Rubyに準備されている閏年の判定メソッド | |
require 'date' | |
puts Date.new(2000).leap? | |
# true | |
puts Date.new(2011).leap? | |
# false | |
puts Date.new(2012).leap? | |
# true | |
puts Date.new(2100).leap? | |
# false | |
puts Date.new(2200).leap? | |
# false | |
puts Date.new(2300).leap? | |
# false | |
puts Date.new(2400).leap? | |
# true |
まとめ
この記事では、閏年を判定するメソッドを自分で作成した場合と、Rubyに準備されているメソッドを使って、閏年を判定しました。
Good luck for your engineer life!