hdml指的是什么接口
315
2022-08-30
python_利用迭代器(生成器)来计算数列的前n项和
文章目录
有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13..., 分别求出这个数列的前10项之和以及前20项之和,并打印输出,输出格式要求小数点后保留4位。
有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13…, 分别求出这个数列的前10项之和以及前20项之和,并打印输出,输出格式要求小数点后保留4位。
""" iterator """def fib_variant(generate_max_times): count = 0 a, b = 2, 3 while count < generate_max_times: yield a a, b = b, a+b count += 1 return "end"def fib_variant2(generate_max_times): count = 0 a, b = 1, 2 while count < generate_max_times: yield a a, b = b, a+b count += 1""" test the iterator: """# for i in fib_variant(10):# print(i)# for i in fib_variant2(10):# print(i)""" calculate:sum: 2/1,3/2,5/3,8/5,13/8,21/13."""def sum_fib_variant(bound): count = 0 f1 = fib_variant(bound) f2 = fib_variant2(bound) """ range from 0(not 1) """ for i in range(0, bound): count += next(f1)/next(f2) # print(count) return countprint("sum_10=%.4f" % sum_fib_variant(10))print("sum_20=%.4f" % sum_fib_variant(20))
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~