斐波那契递归算法

数列:1,2,3,5,8,13,21.........根据这样的规律,编程求出400万以内最大的斐波那契数,并求出他是第几个数:

#  递归

def fib(num):

  if num == 1:

    return 1

  if num == 2:

    return 2

  return fib(num - 1) + fib(num - 2)

flag = 0

i = 1

while not flag:

  if  fib(i) > 4000000:

    flag = 1

  else:

    i += 1

print(i,fib(i))

posted @ 2022-06-14 09:47  刘lzh  阅读(100)  评论(0)    收藏  举报