聚热点 juredian

根号(根号数的迭代?)

上一个作品,我们是在数轴上依次画出表示根号2、根号3、根号4、根号5……根号10的点:

那么,类似地,可以利用勾股定理(毕达哥拉斯定理),作出长为根号2、根号3、根号4、根号5……的线段:

源文件获取方式,请见文末

有人称之为毕氏螺线。毕氏,即毕达哥拉斯。也有人称之为根号数的迭代。

前一个叫法好理解,而后一个叫法,则与其制作有关。

那么,是怎么制作的呢?

迭代

何为迭代?

每一次对过程的重复称为一次迭代,而每一次迭代得到的结果会作为下一次迭代的初始值。

而毕氏螺线是怎么得来的?我们先来看下图中的点B2,B3,B4是怎么得来的。

将点B1作为起始点:

点B4,B5,B6,……也可以依照此规律作出来。

而作出这些点的过程,就是不断地对上一个点进行相同操作(垂直,长为1)的重复过程,即为迭代。

在GeoGebra中,有迭代(Iteration)指令:

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

▪ 例:

将点B以点A为中心,逆时针旋转90度,得到第一个新点;再将此点以点A为中心,逆时针旋转90度,得到第二个新点;又将此点以点A为中心,逆时针旋转90度,得到第三个新点;

也就是迭代三次,即:

迭代(旋转(A, -90°, P), P, {B}, 3)

其中,起始值需用花括号{ }括起来。

由上图可见,只得到一个新点——点C。点C为第三个新点,也就是最后一次迭代所得结果。

那么,如果需要显示迭代过程中所产生的点,应该如何做呢?

在GeoGebra中,有相应的指令——迭代列表(IterationList)指令:

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

迭代列表指令,返回的是一个列表,其中,第一个元素为起始值,其后的元素为每次迭代所得到的结果。

▪ 以上面的例子为例,如需显示迭代过程,即:

迭代列表(旋转(A, -90°, P), P, {B}, 3)

需要注意的是:起始值也需用花括号{ }括起来。

对迭代、迭代列表有了初步认识后,我们来看看怎么用迭代列表作出毕氏螺线中相关的点。

至于需要动态显示,只需让迭代次数是一个变量即可,我们用滑动条n来表示,即:

n = 滑动条(1, 18, 1)

当然,n的最大值并非必须是18,也可以再大一些。

再作出点A、点B:

A = 交点(x轴, y轴)

B = (-1, 0)

备注:滑动条(slider)、交点(intersect)、x轴(xAxis)、y轴(yAxis)。

为了保证垂直与长为1,有多种做法。这里介绍三种方法。

【法一】

垂直——旋转90度;长为1——除以自身的长度。

即:

迭代列表(P + 向量(P, 旋转(A, -90°, P)) / 距离(P, 旋转(A, -90°, P)), P, {B}, n)

备注:向量(vector)、旋转(rotate)、距离(distance)。

【法二】

垂直——旋转90度;长为1的向量——单位向量。

即:

迭代列表(P + 单位向量(向量(P, 旋转(A, -90°, P))), P, {B}, n)

备注:单位向量(unitvector)。

法一、法二是着眼于点,由点旋转90度,保证垂直。若是着眼于线段,那么,为保证垂直于线段,则可取其法向量。

【法三】

垂直,且长为1的向量——单位法向量。

即:

迭代列表(P + 单位法向量(线段(A,P)), P, {B}, n)

备注:单位法向量(unitperpendicularvector)。

取以上任意一种方法构造点均可,并命名为l1。

多边形

有了这些点,即 l1;则可构造出相应的直角三角形。即:

l2 = 序列(多边形(A, 元素(l1, k), 元素(l1, k + 1)), k, 1, n)

备注:序列(sequence)、多边形(polygon)、元素(element)。

关于序列指令的解读,请见链接。

文本

先标出直角边AB的长为1:

利用文本工具

而其他长为1的直角边,则可利用序列指令标出1,即:

l3 = 序列(文本("1", 中点(元素(l1, k - 1), 元素(l1, k)), true, true), k, 2, n + 1)

而根号2、根号3、根号4……等文本的显示,也同样可利用序列指令,即:

序列(文本("sqrt{" + k+ "}", 中点(A, 元素(l1, k)), true, true), k, 2, n + 1)

但是,发现文本的位置并不太妥当。

还记得,《文本进阶》中的放大招吗?

此刻,即可派上用场,操作如下:

引入点C来调整文本位置

至此,拉动滑动条n,即有开头演示的效果。

结语

有重复性操作,不仅可以交给序列,还可以交给迭代或迭代列表。

打个比方:

如果是已知通项公式,即知道第n项与n之间的关系,则可使用序列。如果是已知递推公式,即知道第n项与其前一项或几项的关系,则可使用迭代或迭代列表。其中,如需显示迭代过程的,则用迭代列表;而只需最终的迭代结果,则用迭代。

在GeoGebra中,除了序列指令、迭代与迭代列表指令,还有一大指令——映射(zip)指令,也是可以使得制作更方便、更高效!映射指令,主要是在批量构造对象、处理对应关系上,有极大的优势。

批量构造对象的例子,请参照链接的第二部分。在处理对应关系上,请参照链接。

如需作品源文件,请回复:毕氏螺线。

搜索建议:根号  根号词条  
热博

 剃须泡的做法(怎么做剃须泡)

剃须泡沫液还用买吗?教你在家自制,省时又省钱,一分钟就学会萌萌哒的小编上线了,各位趣友们赶紧围观起来,又是美好的一天,也许此刻的你已经被小编的文章所吸引,那么就...(展开)