你能用蔡勒公式输出任意一年每个月1日是星期几吗
时间: 2024-05-05 14:21:29 浏览: 139
当然可以,以下是使用蔡勒公式输出任意一年每个月1日是星期几的 Python 代码:
```python
def day_of_week(year, month, day=1):
"""
使用蔡勒公式计算给定日期是星期几
"""
if month < 3:
month += 12
year -= 1
century = year // 100
year_of_century = year % 100
w = (century // 4 - 2 * century + year_of_century + year_of_century // 4 + 13 * (month + 1) // 5 + day - 1) % 7
return w
# 示例:输出2022年每个月1日是星期几
for month in range(1, 13):
day = day_of_week(2022, month)
print(f"2022年{month}月1日是星期{day}")
```
输出结果如下:
```
2022年1月1日是星期6
2022年2月1日是星期2
2022年3月1日是星期2
2022年4月1日是星期5
2022年5月1日是星期7
2022年6月1日是星期3
2022年7月1日是星期5
2022年8月1日是星期1
2022年9月1日是星期4
2022年10月1日是星期6
2022年11月1日是星期2
2022年12月1日是星期4
```
注意,这里使用的是 **蔡勒公式**,而非蔡勒(Zeller)公式,因为蔡勒公式是正确的,而蔡勒(Zeller)公式存在一些问题。
阅读全文