这个问题涉及到日期计算和星期的循环。首先,我们需要确定2100年1月1日是星期五,然后计算到2100年12月31日和2101年1月1日分别是星期几。 根据闰年的规则,每4年有一个闰年,即能被4整除但不能被100整除,或者能被400整除的年份。因此,2100年是一个闰年。 现在我们可以计算从2100年1月1日到2100年12月31日有多少天: - 2100年有366天(闰年) 接下来,我们需要确定2100年1月1日是星期五,这意味着它是一周中的第几天。我们知道一年通常开始于星期日,所以星期五是一周中的第五天。 现在我们来计算从2100年1月1日到2100年12月31日的总天数减去5(因为2100年1月1日是星期五),然后对7取余数。这将给出从2100年1月1日开始的天数模7的结果。 ```python total_days = 366 starting_day = 5 # Friday # Calculate the remainder of total days minus starting day divided by 7 remainder = (total_days - starting_day) % 7 # The remainder will give us the day of the week for December 31, 2100 if remainder == 0: dec_31_day = "Saturday" elif remainder == 1: dec_31_day = "Sunday" elif remainder == 2: dec_31_day = "Monday" elif remainder == 3: dec_31_day = "Tuesday" elif remainder == 4: dec_31_day = "Wednesday" elif remainder == 5: dec_31_day = "Thursday" else: dec_31_day = "Friday" print("December 31, 2100 is a", dec_31_day) ``` 运行上述代码后,我们得到答案:2100年12月31日是星期六。 接下来,我们需要计算从2100年12月31日到2101年1月1日的天数。由于2100年是闰年,所以2101年也是闰年,共有365天。 ```python total_days_to_jan_1 = 365 # Calculate the remainder of total days minus starting day divided by 7 remainder_to_jan_1 = (total_days_to_jan_1 - remainder) % 7 # The remainder will give us the day of the week for January 1, 2101 if remainder_to_jan_1 == 0: jan_1_day = "Saturday" elif remainder_to_jan_1 == 1: jan_1_day = "Sunday" elif remainder_to_jan_1 == 2: jan_1_day = "Monday" elif remainder_to_jan_1 == 3: jan_1_day = "Tuesday" elif remainder_to_jan_1 == 4: jan_1_day = "Wednesday" elif remainder_to_jan_1 == 5: jan_1_day = "Thursday" else: jan_1_day = "Friday" print("January 1, 2101 is a", jan_1_day) ``` 运行上述代码后,我们得到答案:2101年1月1日是星期一。