鱼C论坛

 找回密码
 立即注册
查看: 614|回复: 7

[已解决]递归

[复制链接]
发表于 2020-4-24 11:52:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 努力去见你 于 2020-4-24 13:17 编辑

if result != -1:这个写和不写有什么区别,如果result = -1的话,在n<1的地方不就判断了么
def fad(n):
    if n<1:
        print('输入有误')
        return -1
    if n==2 or n==1:
        return 1
    else:
        return fad(n-2)+fad(n-1)
result=fad(int(input('请输入一个数字:')))
if result != -1:
    print('%d'%result)
最佳答案
2020-4-24 12:54:44
如果用户输入的有误则打印 “输入有误” 并返回 -1,之后接收返回值,如果返回值为 -1 则代表用户输入的有误,不执行下面一句
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-4-24 11:55:21 | 显示全部楼层
会判断啊,但是你的数值不符合要求:输入小于一
所以就会输出“输入有误”
然后剩下的……
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-24 12:54:44 | 显示全部楼层    本楼为最佳答案   
如果用户输入的有误则打印 “输入有误” 并返回 -1,之后接收返回值,如果返回值为 -1 则代表用户输入的有误,不执行下面一句
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-24 13:20:29 | 显示全部楼层
zltzlt 发表于 2020-4-24 12:54
如果用户输入的有误则打印 “输入有误” 并返回 -1,之后接收返回值,如果返回值为 -1 则代表用户输入的有 ...

如果我输入有误,在if n < 1:的地方不就判断用户输入有误了么,为什么还需要用if result != 1:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-24 13:21:07 | 显示全部楼层
努力去见你 发表于 2020-4-24 13:20
如果我输入有误,在if n < 1:的地方不就判断用户输入有误了么,为什么还需要用if result != 1:

你去掉 if result != -1 试试,当输入有误的时候还会打印结果
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-24 13:21:30 | 显示全部楼层
weiter 发表于 2020-4-24 11:55
会判断啊,但是你的数值不符合要求:输入小于一
所以就会输出“输入有误”
然后剩下的……

如果我输入有误,在if n < 1:的地方不就判断用户输入有误了么,为什么还需要用if result != 1:,如果我不写if result != 1:会在什么情况下出问题么
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-24 13:26:11 | 显示全部楼层
zltzlt 发表于 2020-4-24 13:21
你去掉 if result != -1 试试,当输入有误的时候还会打印结果

奥奥,懂了,谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-24 13:27:43 | 显示全部楼层

如果你的问题已解决,请设置【最佳答案】
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-26 20:47

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表