第22讲视频中关于计算兔子繁殖数量的疑问
题目:F(n)= 1 n=11 n=2
F(n-1)+F(n-2)n>2
问:经历20个月后。会有多少只兔子?
代码: def fab(n):
n1 = 1
n2 = 1
n3 = 1
if n<1:
print('输入错误!')
return -1
while (n-2)>0:
n3=n1+n2
n1=n2
n2=n3
n=n-1
return n3
result = fab(20)
if result !=-1:
print('总共有%d对兔子.'% result)
疑问:n=n-1 这里不明白,视频里讲是少了一次循环。还是不太理解,希望有大神可以指点一下~{:10_245:}
因为 n 是作为斐波那契数列个数,即兔子繁殖次数
n-1 是因为每循环一次得出一次斐波那契数列的值,所以减少一次循环次数
页:
[1]