Q. 西暦、月、日から曜日をしらべよ(ツェラーの公式)
Q. 西暦、月、日から曜日をしらべよ(ツェラーの公式)
ツェラーの公式 ・・・ 1582年10月15日(金)以降の曜日を求める公式
年 + 年/4 - 年/100 + 年/400 + (13*月+8)/5 + 日 を7で割ったときのあまりが、
0ならば日曜、1ならば月曜、・・・、6ならば土曜。
ただし、1月、2月は前年の13月、14月として計算する。
A.
String[] dayString = { "日曜日", "月曜日", "火曜日", "水曜日", "木曜日", "金曜日", "土曜日" };
int year = 2007;
int month = 6;
int date = 28;
System.out.println(year + "年" + month + "月" + date + "日は、、、");
if (month == 1 || month == 2) {
year--;
month += 12;
}
int day = (year + year / 4 - year / 100 + year / 400 + (13 * month + 8)
/ 5 + date) % 7;
System.out.println(dayString[day]);