year=int(input("请输入年份:"))
if(year%4==0 and year%100 !=0):
print("是闰年!")
elif(year%400==0):
print("是闰年!")
else:
print("不是闰年!")
为什么在计算闰年时,用到的是% 而不是/
判断是否能被100和4整除,而不是判断它是100和4的多少倍!
一个是计算余数,一个是计算商。没有余数是闰年
闰年判断条件这样写:
if(year%4==0&&year%100!=0||year%400==0)
补充一下/是求商,%取余
在计算闰年时,我们使用%运算符而不是/运算符的原因是因为%运算符可以计算一个数除以另一个数的余数,而不同于/运算符计算出的是除法结果的商。
在判断一个年份是否为闰年时,通常使用以下规则:
下面是使用%运算符来计算闰年的示例代码:
def is_leap_year(year):
if year % 400 == 0:
return True
elif year % 4 == 0 and year % 100 != 0:
return True
else:
return False
year = 2020
if is_leap_year(year):
print(year, "is a leap year")
else:
print(year, "is not a leap year")
在这段代码中,我们使用%运算符来判断年份能否整除400、整除4但不能整除100。如果满足这些条件,则返回True表示年份是闰年;反之,返回False表示年份不是闰年。
通过使用%运算符,我们可以得到年份除以400或除以4的余数,根据余数是否为0来判断年份是否为闰年。而使用/运算符仅能得到整除的结果,无法判断余数。因此,我们使用%运算符来计算闰年。
最好百度下取余是什么意思