Python 闰年计算器不打印任何输出
出于某种原因,程序在接受输入后不会打印任何内容Python 闰年计算器不打印任何输出,python,python-3.x,Python,Python 3.x,出于某种原因,程序在接受输入后不会打印任何内容 如果有人需要,这里有一个闰年规则的链接:好吧,不打印任何内容的原因正如@John Gordon所说:在你的程序中遗漏一些其他条款。我已修改为以下代码: year = int(input("Enter a year: ")) if (year % 4) == 0: if (year % 100) == 0 and (year % 400) == 0: print (year, "IS a leap year.") else:
如果有人需要,这里有一个闰年规则的链接:好吧,不打印任何内容的原因正如@John Gordon所说:在你的程序中遗漏一些其他条款。我已修改为以下代码:
year = int(input("Enter a year: "))
if (year % 4) == 0:
if (year % 100) == 0 and (year % 400) == 0:
print (year, "IS a leap year.")
else:
print (year, "is NOT a leap year.")
year = int(input("Enter a year: "))
if (year % 4) == 0:
if (year % 100) == 0 and (year % 400) != 0:
print (year, "is NOT leap year.")
else:
print (year, "is a leap year.")
else:
print (year, "is NOT a leap year.")
当一年可以除以4时,它可能是闰年。从这个意义上说,当它可以被100除,但不能被400除时,这不是闰年。在其他情况下是这样的。简单地说,您在第%4==0年的情况下错过了一些案例
对我来说,我通常用以下代码来判断闰年:
year = int(input("Enter a year: "))
if (year % 4) == 0:
if (year % 100) == 0 and (year % 400) == 0:
print (year, "IS a leap year.")
else:
print (year, "is NOT a leap year.")
year = int(input("Enter a year: "))
if (year % 4) == 0:
if (year % 100) == 0 and (year % 400) != 0:
print (year, "is NOT leap year.")
else:
print (year, "is a leap year.")
else:
print (year, "is NOT a leap year.")
这是我的程序取自“C编程语言第二版”:
我认为你提到的链接上提供的规则是错误的。闰年应该可以被4整除,不能被100整除。但是,如果它可以被100整除,但也可以被400整除,则它是leap。当我运行代码并输入任何数字时,您的程序将相应地打印……对于第二个if
,您没有else
条件。因此,当数字可以被4整除,但不能被100或400整除时,程序将不执行任何操作。@glls它适用于某些数字,但不适用于其他数字。比如说输入2000张打印出来的东西,但2008年没有:/我做了这个。目前它对我有效,但我不确定它有多准确,或者我是否可以使代码更高效@哦,我知道了。yomin解释了你想说的话。谢谢你的帮助!:D