***def is_leap(year):
leap = False
if(( year % 400 == 0 and year % 100 == 0 ) or ( year % 4 ==0 )):
leap = True
# Write your logc here
return leap
year = int(input())
print(is_leap(year))***
我使用此代码来查找1900年之后的黑客等级python“编写函数”练习的leap年,但它显示2100年是错误的。我该怎么办?
答案 0 :(得分:1)
条件
( year % 400 == 0 and year % 100 == 0 ) or ( year % 4 ==0 )
是错误的。更改您的代码,以使
year % 400 == 0
year年year % 100 == 0
不是a年year % 4 == 0
year年您还可以使用以下算法:https://en.wikipedia.org/wiki/Leap_year#Algorithm