割り算の余りを利用して、曜日を当てるプログラムを作ろう。calendar.rb
#!/usr/koeki/bin/ruby
STDERR.print("6 月の曜日を当てます。日にちをどうぞ: ")
day = gets.chomp.to_i
d = (4 + day) % 7 # 6 月 1 日は金曜日なので
# day == 1 なら d = 5 となるよう調節
if d == 0
wday = "日"
elsif d == 1
wday = "月"
elsif d == 2
wday = "火"
elsif d == 3
wday = "水"
elsif d == 4
wday = "木"
elsif d == 5
wday = "金"
else wday = "土"
end
printf("%d 日は%s曜日です\n", day, wday)
同じ曜日の日付が 7 ずつずれることを使ったプログラムである。
Madoka Nishimura <madoka.koeki-u.ac.jp>