今天是 2012年 4 月 12 日星期四,编写程序,输入今天开始到 12 月 31 日之间的任意日期,输出那一天是星期几。
输入格式
共两行,第一行包含一个整数 m,表示询问日期的月份。
第二行包含一个整数 d,表示询问日期的为该月的第几天。
输出格式
输出询问日期是星期几。
注意,要用英文表示。
周一到周日的英文表示如下:
"Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"
数据范围
4≤m≤12,
1≤d≤31,
保证日期合法。
输入样例:
5
20
输出样例:
Sunday
#include <bits/stdc++.h> // 包含标准库头文件
using namespace std; // 使用标准命名空间
int main() {
int month, date;
cin >> month >> date; // 输入询问日期的月份和日期
int m = 4, d = 12, day = 4; // 初始化起始日期为4月12日星期四
int months[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; // 每个月的天数
while (m < month || d < date) { // 循环直到达到询问日期
d++; // 日期加一
if (d > months[m - 1]) { // 如果日期超过该月天数
d = 1; // 日期重置为1
m++; // 月份加一
}
day = (day + 1) % 7; // 计算星期几
}
string names[] = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}; // 星期的英文表示
cout << names[day] << endl; // 输出询问日期是星期几
return 0; // 返回0表示程序正常结束
}