柿子饼同学 发表于 2021-2-15 14:32:06

这个程序有什么问题

这是那个作业里的一个题目 判断是否是闰年。


这是我写的代码
#判断是否为闰年#

year = int(input('请输入一个年份:'))

if not year % 4 and year % 100 or not(year % 100 and year % 400):
   print('%d 是闰年' % year)
else:
   print('%d 不是闰年' % year)

但是运行之后它竟然说2200是闰年{:10_306:}
然后我也不知道到底哪里有问题求指点{:10_254:}

qiuyouzhi 发表于 2021-2-15 14:37:00

改成这样:
#判断是否为闰年#

year = int(input('请输入一个年份:'))

if year % 4 == 0 and year % 100 != 0 or year % 400 == 0:
   print('%d 是闰年' % year)
else:
   print('%d 不是闰年' % year)

wp231957 发表于 2021-2-15 14:39:02

闰年的定义,能被400整除
或者
能被4整除但是不能被100整除

fsf359 发表于 2021-2-15 14:42:33

#判断是否为闰年#

year = int(input('请输入一个年份:'))

if not year % 4 and year % 100 or not(year % 100 or year % 400):
   print('%d 是闰年' % year)
else:
   print('%d 不是闰年' % year)

这样应该就可以了

lixiangyv 发表于 2021-2-15 16:05:41

闰年的定义是:能被400整除或者能被4整除但是不能被100整除
所以代码要改成下面这样:
#判断是否为闰年#

year = int(input('请输入一个年份:'))

if not year % 4 and year % 100 or not year % 400:
   print('%d 是闰年' % year)
else:
   print('%d 不是闰年' % year)

柿子饼同学 发表于 2021-2-16 11:46:03

谢谢谢谢{:10_281:}
页: [1]
查看完整版本: 这个程序有什么问题