【Python练习题 019】 有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。

-----------------------------------------------

这题似乎也不难,规律是:后一个分数的分子=前一个分数的分子+分母,后一个分数的分母=前一个分数的分子,循环个20次就有结果。注意,假设分子为a,分母为b,虽然 a = a + b,但此时a已经变成 a+b 了,所以再给b重新赋值的时候,得是 (a+b)-b 才能等于原分母b,所以重新赋值时就得写成 a-b。代码如下:

sum = 0

a, b = 2, 1

for i in range(20):

sum = sum + a/b

a = a + b

b = a - b

print(sum)

输出结果如下:

32.66026079864164

不过,话说原题用的是分数,经过这么一计算,成了浮点数,精度上会不会有问题呢?想来想去,还是保持分数的形式比较精确吧…… 一查,发现计算分数时得 from fractions import Fraction 才能用。代码如下:

from fractions import Fraction

sum = 0

a, b = 2, 1

for i in range(20):

sum = sum + Fraction(a/b)

a = a + b

b = a - b

print(sum)

输出结果如下:

73544369181292861/2251799813685248

这个分数也够恐怖的!放到IDLE里计算一下,结果跟上面的浮点数一模一样。好吧……

++++++++++++++++++++++++++++++++++++++

python分数序列求和_Python练习题 019:求分数序列之和相关推荐

  1. python 分数序列求和公式_Python练习题 019:求分数序列之和

    [Python练习题 019] 有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和. --------------------------------- ...

  2. python分数序列求和_Python实现分数序列求和

    我就废话不多说了,直接上代码吧!#!/usr/bin/env python # coding:UTF-8 """ @version: python3.x @author: ...

  3. python整数序列求和_Python从菜鸟到高手(14):序列的加法和乘法

    1 序列的加法 序列也可以相加,但要注意,这里的相加,并不是相对应的序列元素值相加,而是序列首尾相接.由于字符串属于字符序列,所以字符串相加也可以看做是序列相加.但一个字符串不能和一个序列相加,否则会 ...

  4. python while循环求和_Python基础——for/while循环

    Python版本:3.6.2  操作系统:Windows  作者:SmallWZQ 上学期间,常常遇到这样的情景:为了惩罚学生,老师会说:"XXX,你先去操场上跑10圈再回来继续反省.&qu ...

  5. python1到100能被5整除_python练习题:求从1到100的数字中所有既能被3整除又能被5整除的数字的有哪些...

    python练习题: # 求从1到100的数字中所有既能被3整除又能被5整除的数字的有哪些 for i in range(1, 101): if (i%15 == 0): print(i) # 判断是 ...

  6. python范围数字求和_Python范围()

    python范围数字求和 Python range() function is a utility function to generate the list of numbers. The list ...

  7. python奇数阶乘求和_Python阶乘求和的方法

    Python阶乘求和的方法 题目描述: 获得用户输入的整数n,输出 1!+2!+-+n!的值. 如果输入数值为0.负数.非数字或非整数,输出提示信息:输入有误,请输入正整数. 方法一:#factTes ...

  8. python计算题库_python练习题-

    Python 练习题库 By 郑红波 2017-12-19 一. 填空题 1. Python 标准库 math 中用来计算平方根的函数是 __________ . ( sqrt ) 2. 在 Pyth ...

  9. python编写等差数列求和_python等差数列求和公式前 100 项的和实例

    最近跑去学了下python,一个很简单的题,结果发现数学公示忘了,在不用for循环的情况下居然有些懵,记录为下.. 题:等差数列可以定义为每一项与它的前一项的差等于一个常数,可以用变量 x1 表示等差 ...

最新文章

  1. SAP PP ECR的Profile规定了用它可以修改哪些数据对象
  2. python零基础入门建模_python基础教程之Python 建模步骤|python基础教程|python入门|python教程...
  3. 南方电网两栖机器人_探访国内最大5G智能电网应用区:5G机器人已替代人工巡检...
  4. BizTalk动手实验(十七)ODBC适配器使用
  5. 如何用HttpWebRequest下载gzip, deflate压缩的页面
  6. VC InitInstance函数
  7. js中in关键字的用法
  8. TensorFlow 资源大全中文版
  9. Python在定义类方法时self的作用是什么?是否可以不写
  10. ifconfig: command not found(CentOS专版,其他的可以参考)
  11. js获取post请求参数_SpringMVC请求参数获取时,有这六种方式值得学习
  12. 数学建模论文写作方法大总结
  13. 微信小程序画布实现星星闪烁
  14. 【前端学习-16】【day06】WebAPI编程/动画函数封装/回调函数/轮播图/自动播放/节流阀/返回顶部/筋斗云/触屏事件/触屏事件对象/
  15. 手把手教你iPhone 3G手机软件开发
  16. 首批!工信部下达2021年国家工业专项节能监察任务,涉及270 个数据中心(附名单)...
  17. 虚拟内存,物理内存,页面文件,还有任务管理器
  18. 本机微信开发环境搭建
  19. 大数据架构及行业大数据应用
  20. 【互联网及其应用】第5章网络应用制作技术

热门文章

  1. Spring Cloud Stream与RabbitMQ整合
  2. Python 报错TypeError: expected string or bytes-like object
  3. Linux下的whoami命令
  4. php mescroll,mescroll.js上拉加载下拉刷新组件使用详解
  5. java进程因机器内存不足被系统kill的定位
  6. Vue ---- 指令
  7. java调用notify方法_Java线程,下面程序不知怎么调用notify方法唤醒test1,请指正
  8. php写ssh命令行_php使用ssh2来操作服务器执行命令
  9. python sys模块详解_python之sys模块详解
  10. 笨方法学python第四版当当_“笨办法”学Python(第3版)