Python练手小项目(5)斐波那契数列及其曲线的绘制
斐波那契数列,也叫黄金分割数列、兔子繁殖数列等,其实很简单,数列的前几项是这样的:1、1、2、3、5、8、13、21、34、……从第三项开始,后面的一项等于前面两项之和,在科学领域有很多应用,在自然界也能找到很多遵循该数列排列的很多自然现象或生物特征。
图片源自网络,出处不详。
任务一:print() 数列。
任务二:用turtle库画出数列曲线。
#任务一完整代码
def fib(n):a,b=1,1print(a,end=(','))#第一次定义a值for i in range(n):a,b=b,a+b#迭代有重叠部分print(a,end=(','))#第2~n次定义a值
fib(10)
导入turtle库,以a值为半径,画1/4圆曲线。
#任务二完整代码:
import turtle as t
t.speed(0)
t.pensize(3)
t.pencolor('blue')
def fibarc(n):#重新定义arc函数a,b=1,1for i in range(n):a,b=b,a+bt.circle(a,90)#半径为a,数列前两个1只保留第二个,90度圆弧
fibarc(13)
t.exitonclick()
绘制出的图像不是特别完美,问题主要是半径较小的部分看不明显,还可以改进一下。
#改进后完整代码:
import turtle as t
t.speed(0)
t.pensize(3)
t.pencolor('blue')
def fibarc(n):a,b=1,1for i in range(n):a,b=b,a+bt.circle(a*10,90)#把a值放大10倍
fibarc(9)#循环数量减少一些
t.exitonclick()
改进后图像
Python练手小项目(5)斐波那契数列及其曲线的绘制相关推荐
- Python练手小项目(12)斐波那契曲线的改进
在第5课中我们简单的绘制了斐波那契数列的曲线,本节我们对曲线进行一些小小的改进,首先是用一个正方形把每一段曲线框起来,然后为每一段曲线添加一个尺寸标注. #斐波那契的改进20220518: impor ...
- Python练习案例(二)——斐波那契数列
前言 大家好,今天我们主要练习的就是斐波那契数列,相信很多同学都对这个数列有一定的了解,今天就来试一试用python来写出斐波那契数列,并且画出他的图像. 正文 大家知道斐波那契数列其实是有规律的,如 ...
- 使用canvas 绘制一个有限度的斐波那契数列的曲线
昨天看到"前端面试中的常见的算法问题"的一篇文章,感觉有点挑战,所以才要实现使用canvas 绘制一个有限度的斐波那契数列的曲线,刚开始真是想破脑袋也实现不了,被下图中交接的线条搞 ...
- python中fib什么意思_Python斐波那契数列是什么?怎么用?
小编第一次看到这个词的时候,比懵的状态,后来自己深入了解了下,原来这个内容并不难,于是整理了出来,一起来看下吧~ 需求 用Python脚本实现斐波那契数列. 思路 斐波那契数列,也称兔子数列,是指1, ...
- python实现连续数列相加_技术 | Python经典面试题解析实现斐波那契数列
黑马程序员 微信号:heiniu526 传智播客旗下互联网资讯,学习资源免费分享平台 大家在面试过程中经常会考到斐波那契数列,斐波那契数列(Fibonacci)最早由印度数学家Gopala提出,而第一 ...
- python学习-综合练习三(斐波那契数列、阿姆斯特朗数、//和/、十进制转二进制bin、八进制oct、十六进制hex、进制转换源码、python中::和:的区别)
文章目录 斐波那契数列 阿姆斯特朗数 十进制转二进制bin.八进制oct.十六进制hex 补充进制转换源码 python中::和:的区别 说明:本篇博文的知识点大部分来自 Python3 实例 斐波那 ...
- python魔术方法(进阶)斐波那契数列
文章目录 特殊属性 查看属性 实例化 可视化 hash bool 运算符重载应用场景 容器相关方法 可调用对象 上下文管理 上下文管理的安全性 方法的参数 contextlib.contextmana ...
- python(采用属猪输出斐波拉契数列前30个数,每行输出五个数)
""" 功能:采用属猪输出斐波拉契数列前30个数,每行输出五个数 作者: 时间: """ fid = [1, 1] for i in ran ...
- Python输入整数n,求斐波拉契数列第n个数
递归方法: # 输入整数n,求斐波拉契数列第n个数. # 思路: # 递归式算法: # 利用f(n) = f(n-1) + f(n-2)的特性来进行递归def fn(n):if n==0:return ...
最新文章
- linux网络编程常用函数详解与实例(socket--bind--listen--accept)
- java安全编码指南之:Mutability可变性
- 虚拟串口工具Virtual Serial Port Driver(VSPD)
- CNN中的权重维度解析以及卷积核中的数值是怎么确定的
- 企业打造自己的数据中台,需要的是一套硅谷方法论(文末有福利!)
- nginx反向代理模块配置详解_nginx反向代理配置详解
- 基于STM32F427的模拟SSI协议绝对式编码器位置反馈通信
- express-urlrewrite express url重写
- VS间接寻址级别不同
- 任小龙 mysql笔记_小码哥-任小龙Java笔记-面向对象的全部笔记.pdf
- qt实现拓扑图_基于QT的PLC梯形图编辑系统设计与实现
- python3.7打包exe后有显示no utf-8_pyinstaller打包py文件时出现错误SyntaxError: Non-UTF-8 code starting with '\xb3'...
- [git]fatal: unable to read config file 'xxx/.gitconfig': No such file or directory
- Linux进程详解 【Linux由基础到进阶】
- 在线画图工具-heatmap热图
- 计算机软件开发行业前景
- Spring中RedisTemplate方法中,redis相关操作笔记。[redis生成指定长度自增批次号,删除、设置过期时间等]
- mysql数据库中查询姓氏_数据库查询表添加姓氏
- 如何从 OpenVINO 的主分支构建 Python Wheel 包
- 阿里巴巴2014校园招聘算法题
热门文章
- 拉结尔6月21日服务器维护,拉结尔6.20开服 国创暗黑刷新巅峰
- intllij idea -- 文件行数过多出现卡顿,特别卡
- 新浪微博mid base62进制转10进制
- word局部页面横向
- 快手通过标签添加的我_利用话题标签,快手账号7天涨粉9万的超级秘籍
- hide show vue 动画_做一个可复用的 echarts-vue 组件(延迟动画加载)
- 2009-07-03 TIPTOP
- C++中access函数
- 值得一用的Windows磁盘空间分析工具——WizTree
- EasyExcel导出动态合并单元格