本文是关于Python分数序列求和的应用练习,适合菜鸟练习使用,python大牛绕行哦。

Python练习题问题如下:

问题简述:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13

要求:求出这个数列的前20项之和。

Python解题思路分析:这道题要关注分子与分母的变化规律。2,3,5,8......

Python解题源代码如下:

a = 2.0

b = 1.0

s = 0

for n in range(1,21):

s += a / b

t = a

a = a + b

b = t

print s

第二种方法:

a = 2.0

b = 1.0

s = 0.0

for n in range(1,21):

s += a / b

b,a = a , a + b

print s

s = 0.0

for n in range(1,21):

s += a / b

b,a = a , a + b

print s

还有第三种方法,可以参考下:

#!/usr/bin/python

# -*- coding: UTF-8 -*-

#www.iplaypy

a = 2.0

b = 1.0

l = []

for n in range(1,21):

b,a = a,a + b

l.append(a / b)

print reduce(lambda x,y: x + y,l)

以上的第三种方法,用到了lambda表达式,这个需要对lambda有了解明白其中的原理。但是很简洁。

Python分数序列求和,编程练习题实例二十四,输出结果为:32.6602607986。

玩蛇网文章,转载请注明出处和文章网址:https://www.iplaypy/python-100/11108.html

相关文章 Recommend

更多推荐

python 分数序列求和公式_Python分数序列求和,编程练习题实例二十四