请问我这段代码哪有问题,无论我输入什么年份,结果都显示 不是闰年,题目的提示在注释里
来源:2-12 编程练习
TeacherZhe
2020-02-29 12:19:58
#定义变量year,并接收“请输入正确的年份:” year = input("请输入正确的年份:") #判断是否是闰年:1、能被4整除,但是不能被100整除的年份 2、能被400整除的年份 if type(int(year)/4) == int and type(int(year)/100) == float or type(int(year)/400) == int: print("{0}年是闰年".format(year)) else: print("{0}年不是闰年".format(year))
2回答
为什么要用结果的数据类型来进行判断呢?
能被4整除表示余数为0
不能被100整除表示余数不为0
能被400整除表示余数为0
那判断的时候直接用:if int(year) % 4 == 0 and int(year) % 100 != 0 or int(year) % 400 == 0
这样不就可以正常得出结果了嘛
学习编程,语言只是一个工具、一种载体,最主要的是编程思想
好帮手乔木
2020-03-02
同学你好:
同学可以采纳Vess_ji同学的回答,使用/符号得到的数字类型是浮点型,因此同学无法使用type进行判断。
如果我解决了同学的问题,请采纳!学习愉快^_^。
相似问题