一、科赫雪花简介:

所谓科赫雪花,也就是分形几何图形,例如:

分形几何是一种迭代的几何图形,广泛存在于自然界中。
我们来看看原理图:

二、科赫雪花的递归代码

先看看科赫曲线的递归代码:

import turtle
def koch(size, n):               #函数+分支结构   组成递归if n == 0:                       #基例  : 初试线段turtle.fd(size)else:                              #链条   : 线段组合for angle in [0, 60, -120, 60]:turtle.left(angle)koch(size/3, n-1)

在n阶科赫曲线中,n-1阶的科赫曲线是由n阶的科赫曲线所构成。仔细想一下就能想通。

三、科赫雪花完整代码

import turtle
def koch(size, n):if n == 0:turtle.fd(size)else:for angle in [0, 60, -120, 60]:turtle.left(angle)koch(size/3, n-1)
def main():turtle.setup(600, 600)turtle.penup()turtle.goto(-200,100)turtle.pendown()turtle.pensize(2)level = 3            #三阶的科赫曲线koch(400, level)     turtle.right(120)      #转动120度,使得科赫曲线能围城一个三角形,形成最终的科赫雪花koch(400, level)turtle.right(120)koch(400, level)turtle.hideturtle()    #隐藏画笔
main()

最终样图:

其实,最重要的,是要理解递归的代码。递归不在乎你到底是怎么执行代码的,只需要你找到一个基例,并找到合适的链条将n与n-1串起来即可。不用在乎到底是怎么执行的!!!

深入理解递归:美丽的科赫雪花相关推荐

  1. 用python画雪花 科赫曲线递归_【TCE的编程小讲堂】【Python】【第三期】如何画出科赫雪花?(下)...

    大家还记得上期讲的科赫雪花吗?我们上次讲过画出一条边的方法,大家看看代码复习一下 import turtle#包含turtle库 def koch(l): turtle.forward(l / 4)# ...

  2. java swing 雪花_java递归实现科赫雪花

    今天来写k阶科赫雪花的递归实现,(K值需要你手动输入)至于科赫雪花是什么请大家自行百度. 首先来思考这个程序怎么写,当 count = 0 时就应该是一个三角形,这三个点是你一开始就确定的,以后的改变 ...

  3. 【Python】递归绘制科赫曲线及科赫雪花及转换成可执行文件打包

    科赫曲线 ----------- 绘制科赫曲线 import turtle def koch(size, n):if n == 0:turtle.fd(size)else:for angle in [ ...

  4. python观察日志(part3)--绘制科赫雪花图

    学习笔记 理论部分:分形与混沌 科赫雪花图 分形(fractal)是一种不同于欧氏几何学中元素的几何图形,科赫曲线就是一个分形. 如上图所示,科赫曲线可以用如下方法产生: 在一段直线中间,以边长为1/ ...

  5. scratch教程----4.科赫雪花新积木的运用

    Hi!又是一期scratch教程出炉啦! 这期我们来讲scratch中的递归(以下给出目录,老手可以跳过) 目录 1.初学: 2.进阶: 学过别的编程语言中的递归的小伙伴可以在目录跳过咯: 1.初学: ...

  6. Python学习笔记--科赫雪花的绘制

    科赫雪花 科赫雪花: 科赫雪花小程序的打包(带图标) 百度百科的解释: 科赫雪花: 科赫雪花的绘制思想: 我们使用递归和tutle库来实现科赫雪花的绘制 首先调用turtle库. import tur ...

  7. 【Python】科赫雪花绘制

     科赫曲线绘制 代码 #KochDrawV1.py import turtle def koch(size,n):#size表示绘制科赫曲线的每一个直线的长度,n表示绘制的阶数if n==0:turt ...

  8. Koch科赫雪花的实现

    科赫曲线是一条线.雪花就是从三条线开始 package 科赫雪花;import java.awt.Color; import java.awt.Dimension; import java.awt.F ...

  9. python学习笔记 第五章(科赫雪花与科赫曲线)

    科赫曲线,也叫做雪花曲线.是一种分形几何,分形几何是一种迭代的几何图形,广泛存在于自然界中. 科赫曲线是一种迭代的图形,所以我们是可以利用python中的迭代法来绘制. 我们先考虑如何实现迭代. 首先 ...

最新文章

  1. powerDesigner 正向工程生成sql注释问题 (mysql注释问题)
  2. RabbitMQ 把一个queue从一个node转移到另外一个node.
  3. DIV CSS display (block none inline)属性的用法教程
  4. 如何通过构建以太坊智能合约来销售商品
  5. EOS Dawn 1.0
  6. P4126 [AHOI2009]最小割(网络流/最小割)
  7. 357. Count Numbers with Unique Digits
  8. 致准医学博士生的乘风破浪秘籍
  9. 视觉SLAM十四讲学习笔记-第四讲-李代数求导与扰动模型
  10. Java中类的初始化顺序是什么?
  11. AD19PCB增加board shape即增大黑色布的面积
  12. 51Nod1601 完全图的最小生成树计数 Trie Prufer编码
  13. springcloud ip部署_php接入SpringCloud微服务框架
  14. 浏览器默认打开360搜索怎么办?
  15. Proxmark3教程2:用Pm3Gui_Pro V5.2 新功能 IC卡匠数据维护
  16. 从高德地图获取城市地铁线路+站点
  17. :root选择器的妙用【2021.11.14】
  18. Nginx介绍及安装配置
  19. 如何学习平面设计,需要学习哪些软件?
  20. 胆囊炎的临床症状有哪些?

热门文章

  1. 电击手表设计#开源#
  2. DAQWare for Digilent Analog Discovery发布1.0.4版本
  3. softlayer iso_在IBM SoftLayer上使用Datameer从大数据中获得敏锐的见解
  4. 管理学10大经典定律
  5. openwrt中br-lan,eth0,eth0.1,eth0.2 已经 实际网口wan,lan对应的配置
  6. HTTP请求中的OPTIONS请求
  7. 每天进步一点点【图的深度优先搜索与广度优先搜索】
  8. NAVEX:为动态Web应用程序生成精确且可扩展的漏洞
  9. 学生晚上回宿舍时其在实验室的计算机主机,学生晚上回宿舍时, 其在实验室的计算机主机应关闭, 显示器一般不用关。...
  10. R语言图形编辑器GUI开发环境RStudio安装(Windows操作系统下、RStudio开发环境安装)