文章

79

粉丝

221

获赞

46

访问

198.5k

头像
已知4.12日周四,输入日期求周几
P1011 贵州大学机试题
发布于2023年3月17日 16:19
阅读数 3.0k

#include <iostream>
#include <string>
using namespace std;
int main(){
	int m,d,sum =0;
	string week[7]={"Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"};
	cin>>m>>d;
	for(int i = 4;i<m;i++){
		if((i<=7&&i%2!=0)||(i>7&&i%2==0))
			sum+=31;
		else
			sum+=30;
	}
	sum -=12;
	sum +=d;
	cout<<week[(sum+3)%7];
	return 0;
}

设置一周的七天,存储在字符串数组week中。从4月开始加和到输入值的该月之前有多少天,七月及之前单数月份31天,七月之后的双数月份31天,由于题目设置只计算4月12日之后的日期因此其他月份都是30天。加和到输入月份的前一个月,由于是从4月的开头就开始加和,因此多加了12天,则总天数减去12,再加上输入的日即为从4月12到输入日期一共多少天。由于4月12日为周4,而字符串数组week下标从0开始,因此总天数加上3再对一周七天取余即为week的下标。

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发