当前位置:首页>python>Python编程题:14.P5711 【深基3.例3】闰年判断

Python编程题:14.P5711 【深基3.例3】闰年判断

  • 2026-10-11 06:57:30
Python编程题:14.P5711 【深基3.例3】闰年判断

点击蓝字 关注我们

今天要做的是来自洛谷网站的P5711 【深基3.例3】闰年判断。

https://www.luogu.com.cn/problem/P5711

有账号的可以上去做做。

P5711 【深基3.例3】闰年判断

题目描述

输入一个年份,判断这一年是否是闰年,如果是输出 1,否则输出 0。

1582 年以来,闰年的定义:

普通闰年:公历年份是 4 的倍数,且不是 100 的倍数的,为闰年(如 2004 年、2020 年等就是闰年)。

世纪闰年:公历年份是整百数的,必须是 400 的倍数才是闰年(如 1900 年不是闰年,2000 年是闰年)。

输入格式

输入一个正整数 n,表示年份。

输出格式

输出一行。如果输入的年份是闰年则输出 1,否则输出 0。

输入输出样例

说明/提示

数据保证,1582≤n≤2020 且年份为自然数。

解题思路

满足下面二者其一就是闰年:

1、普通闰年:能被 4 整除 并且 不能被 100 整除

n % 4 == 0 and n % 100 != 0

2、世纪闰年:能被 400 整除

n % 400 == 0

合并表达式:

(n % 4 == 0 and n % 100 != 0) or (n % 400 == 0)

知识点

  • 字符输入 input() 获取字符串,再用int()转换成整数。

  • 判断n是否被m整除:n%m==0

  • 逻辑运算符:and同时满足,or满足其中一个。

参考代码及解析

  • n = int(input())读取输入内容,转为整数,代表年份;

  • if (n % 4 == 0 and n % 100 != 0) or (n % 400 == 0):条件拆分:n % 4 == 0 and n % 100 != 0:普通闰年;n % 400 == 0:世纪闰年;中间 or 代表满足任意一种就是闰年;添加括号方便阅读理解。

  • print(1)条件成立,是闰年,输出 1;

  • else: print(0)条件不成立,不是闰年,输出 0。

如果你觉得意犹未尽,那就趁热打铁,继续挑战一下吧!

P5716 【深基3.例9】月份天数

题目描述

输入年份和月份,输出这一年的这一月有多少天。需要考虑闰年。

输入格式

输入两个正整数,分别表示年份 y 和月数 m,以空格隔开。

输出格式

输出一行一个正整数,表示这个月有多少天。

最新文章

随机文章