R7-9 统计闰年个数 分数 5 作者 巨同升 单位 山东理工大学 现行格里高利历法的置闰规则可以概括为:四闰百不闰,四百闰。编程序实现:输入一个年份,求出到这一年的年末总共经历了多少个闰年,限定不能使用循环结构。假定从公元第一天开始,就实施格里高利历法。 (提示:求出经历了多少个4年、多少个100年、多少个400年。 1.假如所有能被4整除的年份都是闰年,那么到第n年的年末总共经历了多少个闰年? 2.假如所有能被100整除的年份都不是闰年,那么到第n年的年末总共减少多少个闰年? 3.假如所有能被400整除的年份都是闰年,那么到第n年的年末总共增加多少个闰年?) 输入格式: 输入一个代表年份的正整数。 输出格式: 输出闰年个数,最后换行。 输入样例: 2020
时间: 2024-04-06 07:28:16 浏览: 98
可以使用以下代码实现:
```python
year = int(input())
# 计算经历了多少个4年
num_leap_4 = year // 4
# 计算经历了多少个100年
num_leap_100 = year // 100
# 计算经历了多少个400年
num_leap_400 = year // 400
# 减去因为100年而少的闰年数
num_leap_4 -= num_leap_100
# 加上因为400年而多的闰年数
num_leap_4 += num_leap_400
print(num_leap_4)
```
首先,将输入的字符串转换为整型,得到年份 year。
接着,计算经历了多少个 4 年、100 年和 400 年。其中,num_leap_4 表示经历了多少个 4 年,即所有能被 4 整除的年份都是闰年。num_leap_100 表示经历了多少个 100 年,即所有能被 100 整除的年份都不是闰年。num_leap_400 表示经历了多少个 400 年,即所有能被 400 整除的年份都是闰年。
然后,需要减去因为 100 年而少的闰年数,即从第 101 年开始,每 100 年只有 24 年是闰年。因此,需要将 num_leap_4 减去 num_leap_100,得到经历了多少个 4 年,但不是所有能被 4 整除的年份都是闰年。
最后,需要加上因为 400 年而多的闰年数,即从第 401 年开始,每 400 年会多出一个闰年。因此,需要将 num_leap_4 加上 num_leap_400,得到经历了多少个 4 年,包括所有能被 4 整除的年份都是闰年的年份和所有能被 400 整除的年份都是闰年的年份。
最后,输出 num_leap_4 即可。
阅读全文