Python小练习(一)

Fibonacci 数列
1) Fibonacci 是一个有名的数列。序列中的每个数字都是其前面两个数字的总和。 例如,这是10个数字的斐波那契数列,从0,1,1,2,3,5,8,13,21,34开始。编写一个程序,以n个正数作为输入,然后递归地计算和输出斐波那契数列的前n个数(从0开始)。

# Fibonacci 输出前n项
	num = int(input())
def fibonacci(n):
	num = 3
	a = [0,1]
	if (n == 1):
		print(a[0])
	elif (n == 2):
		print(a[n-2],a[n-1])
	else:
		while (num <= n):
			temp = a[num-2] +a[num-3]
			a.append(temp)
			num +=1
		for i in a:
			print(i)
fibonacci(num)

2)在数学上, Fibonacci数列是以递归的方法来定义:
在这里插入图片描述
如果要求的是数列中第n个数的值呢??

num = int(input()) # 输入你要数列中的第n项的数值
def fibonacci(n):
    a0 = 0
    a1 = 1
    if (n == 1):
      result = 0
      print(result)
    elif (n == 2):
      result = 1
      print(result)
    elif (n > 2):
      count = 2
      while (count < n):
        result = a0 + a1 
        count += 1
        a0 = a1			# 进行递归的运算 fn = fn-1 + fn-2
        a1 = result
    print(result)

fibonacci(num)

欢迎更多学python的同学一起交流学习~~

你可能感兴趣的:(python)