【蓝桥杯每日一练】:闰年判断
【摘要】
文章目录
题目解析python代码解法一解法二
题目
给定一个年份,判断这一年是不是闰年。
输入格式 输入包含一个整数y,表示当前的年份。 输出格式 输出一行,如果给定的年份是...
题目
给定一个年份,判断这一年是不是闰年。
输入格式
输入包含一个整数y,表示当前的年份。
输出格式
输出一行,如果给定的年份是闰年,则输出yes,否则输出no。
说明: 当试题指定你输出一个字符串作为结果(比如本题的yes或者no,你需要严格按照试题中给定的大小写,写错大小写将不得分。
样例输入:
2022
样例输出
no
样例输入
2016
样例输出
yes
数据规模与约定
1990 <= y <= 2050。
解析
判断闰年为很经典的例题,我提出两种方法去计算:
- 如果这一年的三月前一天只有29天则为闰年,否则不是非闰年
- 通过最经典的方法去计算:能被 4 整除的大多是闰年,但能被 100 整除 而不能被 400 整除的年份不是闰年,如 1900 年是平年,2000 年是闰年。
python代码
解法一
import datetime
year = int(input()) #输入
time_delta = datetime.timedelta(days=1) # 存储时间的变化量
dt = datetime.date(year=year, month=3, day=1) # 指定输入年份的3月1号
res = dt - time_delta # 让dt存储的日期往前走一天
if res.day == 29: # 如果那年的2月分又29天为闰年
print('yes')
else:
print('no')
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
运行:
解法二
years = int(input("请输入查询的年份: "))
if years % 4 == 0 and years % 100 != 0:
print("Yes")
else:
print("No")
- 1
- 2
- 3
- 4
- 5
运行:
文章来源: chuanchuan.blog.csdn.net,作者:川川菜鸟,版权归原作者所有,如需转载,请联系作者。
原文链接:chuanchuan.blog.csdn.net/article/details/122556044
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)