学做勾股树,掌握迭代!套路在手,不怕迭代——GeoGebra

看到迭代就怕?理不清迭代到底怎么回事?

那就学一学勾股树吧!因为——做勾股树的方法多多,挑一个来学,只要理清了,就可以动手做其他迭代例子啦!

啊K学的是湖南周丙臻老师的方法,当想明白是怎么一回事的时候,超兴奋!超感激!

非常感谢周老师的方法

先来看效果吧:

其中,勾股树是用涂色工具进行涂色。

至于勾股树的制作,可以说是一条指令搞定!

所有指令

先放一下所有指令:

注:迭代列表(IterationList)、多边形(Polygon)、半圆(Semicircle)、描点(Point)、顶点(Vertex)、映射(Zip)、合并(Join)

制作思路

迭代( <表达式>, <变量>, <起始值>, <迭代次数> )

迭代列表( <表达式>, <变量>, <起始值>, <迭代次数> )

多边形( <点1>, <点2>, <顶点数> )

  1. 勾股树可以看做是由一个正方形生成两个正方形,再生成四个正方形……一生二、二生四、四生八……
  2. 在已有正方形上不断重复生成正方形——可用迭代(Iteration)指令,其中“起始值”是正方形
    1. 迭代( <表达式>, <变量>, {多边形(A, B, 4)}, <迭代次数> )
    2. 注:“起始值”外面必须要有一层花括号{ }
  3. 至于“表达式”,需要写出左边、右边的正方形是怎么由底下正方形得到
    1. 要确定一个正方形,需要确定两点
      1. 一点是底下正方形的一个顶点
      2. 另一点的确定,要保证该处成直角——在半圆上描点(直径所对的圆周角是直角)
    2. 将左、右两正方形,放进花括号里,视为整体
    3. 由此,迭代生成的是正方形列表,需要依次取列表中的正方形进行操作——映射
    4. 而映射又会产生列表,最终就是产生两层花括号。但我们只需一层——合并
  4. 由于表达式是对列表进行操作,所以“起始值”必须是列表
    1. 多边形(A, B, 4)外面加一层花括号
    2. 迭代( <表达式>, <变量>, {{多边形(A, B, 4)}}, <迭代次数> )

也就是说基本形式如下:

迭代(合并(映射({生成左正方形, 生成右正方形}, p, p1)), p1, {{底下正方形}}, n)

要看到迭代过程,则用迭代列表,即:

迭代列表(合并(映射({生成左正方形, 生成右正方形}, p, p1)), p1, {{底下正方形}}, n)

注:这里原本有两层花括号,只要一层——可以用合并,也可以用扁平列表。因为合并是去除一层花括号,扁平列表(Flatten)是只保留一层花括号。

超详细过程

想要看一步一步的操作与解说,请点击此处看视频


你get到其中套路了吗

像一生二,都可以用这种形式:

迭代列表(合并(映射({对象1,对象2}, p, p1)), p1, {{对象0}}, n)

至于一生多?也是类似的:

迭代列表(合并(映射({对象1,对象2,……}, p, p1)), p1, {{对象0}}, n)

这个套路超赞的地方是不用半点计算!而且很直接——要得到什么,就让什么作为基础去生成!

回顾一下做法——给一个正方形,就利用这个正方形去生成两个正方形,再由生成的正方形接着生成正方形……其中,利用正方形的顶点作为桥梁。

想检验一下是否真的明白了,不妨多尝试做几个例子!比如——

一生一的:

一生二、一生三:


如需勾股树源文件,请回复:勾股树

【点击文末的“了解更多”,关注后回复,可立马获取。】

了解更多
举报
评论 0