zhoulele 发表于 2020-6-6 10:49:31

判断给定年份是否为闰年,大神帮忙看看

写一个程序,判断给定年份是否为闰年,

以下是我写的,哪位大神帮忙看看错误的地方。

guess=int(input('请输入年份'))
a=guess/4
b=guess/100
c=guess/400
if isinstance(a int)==True:
if isinstance(b int)==True:
    if isinstance(c int)==True:
      print('是闰年')
    else:
      print('不是闰年')
else:
    print('是闰年')
else:
print('不是闰年')

qiuyouzhi 发表于 2020-6-6 10:53:17

首先,Python的除法一定会返回小数,所以不能用isinstance判断。
其次,你的isinstance的参数得有逗号啊
isinstance(a, int)
要这样写

Twilight6 发表于 2020-6-6 10:53:48

这个是什么语言....{:9_229:}

zhoulele 发表于 2020-6-6 10:56:33

Twilight6 发表于 2020-6-6 10:53
这个是什么语言....

我是新新手,真的刚刚开始学,让您见笑了

Twilight6 发表于 2020-6-6 10:57:29

zhoulele 发表于 2020-6-6 10:56
我是新新手,真的刚刚开始学,让您见笑了

改成这样,你用除法必定返回的是 float 而不是 int
guess=int(input('请输入年份'))
a=guess%4
b=guess%100
c=guess%400
if not a:
if not b:
    if not c:
      print('是闰年')
    else:
      print('不是闰年')
else:
    print('是闰年')
else:
print('不是闰年')

jackz007 发表于 2020-6-6 11:04:40

本帖最后由 jackz007 于 2020-6-6 11:07 编辑

   判断整除必须使用取余操作(%),因为,这个运算符就是专门干这个的guess = int(input('请输入年份'))
if guess % 4 == 0 and guess % 100 != 0 or guess % 400 == 0 : print('是闰年')
else : print('不是闰年')

zhoulele 发表于 2020-6-6 11:14:01

谢谢楼上的各位大神了,明白了。我是小学生,很喜欢编程和算法,刚刚开始入门,有些内容没有接触过,感谢大家能够告诉我。

zhoulele 发表于 2020-6-6 11:17:23

jackz007 发表于 2020-6-6 11:04
判断整除必须使用取余操作(%),因为,这个运算符就是专门干这个的

谢谢了,这个看懂了。{:5_91:}

xiaosi4081 发表于 2020-6-6 11:17:50

zhoulele 发表于 2020-6-6 11:14
谢谢楼上的各位大神了,明白了。我是小学生,很喜欢编程和算法,刚刚开始入门,有些内容没有接触过,感谢大 ...

{:10_311:}

zhoulele 发表于 2020-6-6 11:18:05

Twilight6 发表于 2020-6-6 10:57
改成这样,你用除法必定返回的是 float 而不是 int

谢谢了。这个看懂了{:5_91:}
页: [1]
查看完整版本: 判断给定年份是否为闰年,大神帮忙看看