python实现斐波那契数列

方案一:

def fibo(n):
    n1 = 0
    n2 = 1
    count = 2
    # 判断输入的值是否合法
    if n <= 0:
        print("请输入一个正整数。")
    elif n == 1:
        print("斐波那契数列:", end='')
        print(n1)
    else:
        print("斐波那契数列:")
        print(n1, n2, end=" ")
        while count < n:
            nth = n1 + n2
            print(nth, end=" ")
            # 更新值
            n1 = n2
            n2 = nth
            count += 1

方案二:

n=input('请输入您要求的项数:')
def feibo(n):
    if n<=1:
        return n
    else:
        return(feibo(n-1)+feibo(n-2))
for i in range(int(n)):
    print(feibo(i),end=' ')

方案三:

def feibo():
    x = int(input('请输入您要求的项数:'))
    if x <= 1:
        print([0])
    else:
        list1 = [0, 1]
        for i in range(1, x):
            if i == x - 1:
                print(list1)
            else:
                j = list1[i - 1] + list1[i]
                list1.append(j)


feibo()

方案四:

def fib_feibo(x):
	if x <= 1:
		return x
	return fib_feibo(x-1) + fib_feibo(x-2)
x=int(input('请输入您要输的项数:'))
for x in range(0, x):
	print(fib_feibo(x), end=' ')
print()

更多推荐

python实现斐波那契数列