语句为什么不能置换?
def fblj(n):if n != 1 and n != 2:
return fblj(n-1) + fblj(n-2)
else:
return 1
a = int(input("请输入一个正整数:"))
b = fblj(a)
print("%d 的斐波拉级数列是%d"%(a,b))
这个程序里边的语句:
if n != 1 and n != 2:
returnfblj(n-1) + fblj(n-2)
为什么不能换成:
s = fblj(n-1) + fblj(n-2)
if n != 1 and n != 2:
return s
哪位大神帮忙解答一下呀?谢谢啦
上面的,先判断条件,再进入递归,每次递归都会判断条件。
下面的,先进入递归,在递归结束前都不会进入条件判断。 hrp 发表于 2021-3-23 22:00
上面的,先判断条件,再进入递归,每次递归都会判断条件。
下面的,先进入递归,在递归结束前都不会进入条 ...
谢谢,我明白了
页:
[1]