问题描述:
今天是周六,又到了可以休息的日子了,7天后又会是一个周六。请你帮忙计算下,n(n为整数,可以是正也可以为负)天后会是星期几呢?
输入格式:
输入天数
输出格式:
输出星期几
输入样例1:
8
输出样例1:
星期日
输入样例2:
-2
输出样例2:
星期四
python代码
def get_weekday(days):
days = days % 7
weekday_dict = {
0: "星期一",
1: "星期二",
2: "星期三",
3: "星期四",
4: "星期五",
5: "星期六",
6: "星期日"
}
nowday = 5
weekday = (days + nowday) % 7
weekday = weekday_dict[weekday]
return weekday
days = int(input())
weekday = get_weekday(days)
print(weekday)
思路:
首先,将输入的天数对7取余,以保证可以得到一个在0到6之间的值。这样做是因为一周有7天,取余操作可以将天数转化为周期性的值。
然后,定义了一个星期字典weekday_dict
,将数字表示的星期与对应的汉字表示匹配起来。
接下来,设定当前日期为星期六,使用变量nowday
来表示。通过将取余后的天数与当前日期相加,再对7取余,得到计算后的星期数,用变量weekday
表示。
最后,根据星期字典,将计算后的星期数转换为对应的汉字表示,赋值给weekday,
然后返回结果。