递归
本帖最后由 努力去见你 于 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) 会判断啊,但是你的数值不符合要求:输入小于一
所以就会输出“输入有误”
然后剩下的…… 如果用户输入的有误则打印 “输入有误” 并返回 -1,之后接收返回值,如果返回值为 -1 则代表用户输入的有误,不执行下面一句 zltzlt 发表于 2020-4-24 12:54
如果用户输入的有误则打印 “输入有误” 并返回 -1,之后接收返回值,如果返回值为 -1 则代表用户输入的有 ...
如果我输入有误,在if n < 1:的地方不就判断用户输入有误了么,为什么还需要用if result != 1: 努力去见你 发表于 2020-4-24 13:20
如果我输入有误,在if n < 1:的地方不就判断用户输入有误了么,为什么还需要用if result != 1:
你去掉 if result != -1 试试,当输入有误的时候还会打印结果 weiter 发表于 2020-4-24 11:55
会判断啊,但是你的数值不符合要求:输入小于一
所以就会输出“输入有误”
然后剩下的……
如果我输入有误,在if n < 1:的地方不就判断用户输入有误了么,为什么还需要用if result != 1:,如果我不写if result != 1:会在什么情况下出问题么 zltzlt 发表于 2020-4-24 13:21
你去掉 if result != -1 试试,当输入有误的时候还会打印结果
奥奥,懂了,谢谢 努力去见你 发表于 2020-4-24 13:26
奥奥,懂了,谢谢
如果你的问题已解决,请设置【最佳答案】
页:
[1]