weekday.rb
#!/usr/bin/env ruby
# 曜日を求める
# y ... 西暦年
# m ... 月
# d ... 日
def weekday(y, m, d)
ms = [ 0, 3, 3, 6, 1, 4, 6, 2, 5, 0, 3, 5 ]
x = y
if 2 >= m
y -= 1
end
(x + (y / 4) - (y / 100) + (y / 400) + ms[m-1] + (d-1)) % 7
end
require 'date'
def check
d = Date.new(2000, 1, 1)
50000.times do
unless d.wday == weekday(d.year, d.month, d.day)
puts "#{d} ng"
break
end
d = d.next
end
end
check
0 件のコメント:
コメントを投稿