题目有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13…求出这个数列的前20项之和。 1、程序分析 分析数列的规律 第一个数的分子为2,分母为1;第二个数的分分子为3(第一个数的分子+分母),分母为2(第一个数的分子);第三个数的分子为5(第二个数的分子+分母),分母为3(第二个数的分子);以此类推 2、程序实现
#Topic : 求2/1、3/2、5/3、8/5、13/8、21/13...
# 求出这个数列的前20项之和
#File Name : Map-Reduce.py
#Author : Jack Cui
#Created : 13 April 2016
from functools import reduce
a = 2
b = 1
Arr = []
num = int(input("请输入要计算的项数:"))
for i in range(num):
Arr.append(a / b)
a , b = a + b , a
print(reduce(lambda x,y:x+y,Arr))
3、结果显示