Fibonacci数列的两种实现方式
斐波那契数列的形式为:1,1,2,3,5,8,13,21......从第三项开始,后面的每一项都是前面两项的和。
实现的方式有一下 两种:
一:递归方式实现
def fib(n): if n <1: print('数值错误!') return -1 if n ==1 or n ==2: return 1 return fib(n-1) + fib(n-2) f = fib(10) print(f)
当然这种方式的输出为55,是直接计算出某一项的数值的。
二:简单的赋值语句逻辑实现
def fib(max): n,a,b = 0,0,1 while n < max: print(b) a,b = b,a+b n += 1 fib(10)
这种方式输出为:1,1,2,3,5,8,13,21,34,55。可以看到中间值,当然也可以在while结束后只返回最终值。