◆
◆
◆
◆
◆ 、
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
◆
案例1:正方体的堆积
目标是要得到下面的正方体堆积(来自七年级数学课本)
解决方法1:一个一个的利用向量平移绘制,如
中间多画了一个
方法2:立体几何的迭代
方法3:ggb三行指令搞定
说明:这个点A:(1,1,0)
孙生富老师做了下面的这个:
颜色调节得很美!但是对比原图,还是多了中间的部分
笔者把上面的指令稍微拆分了一下:
并且提出问题:
如何把多的这一块去掉
大神级别的萧若茂和赵林老师给出了一个非常漂亮的指令:条件子列
如果不用条件子列,也可以直接在第一个列表中修改,如下:
赵林老师还提出:第一列表指令可以修改为
去除未自定义对象(扁平列表(序列(序列(序列(if(i j==0,(i,j,k)),k,0,n-i-j),j,0,n-i),i,0,n)))
然后提出更加简化的:
扁平列表(序列(序列(序列((i, j, k), k, 0, 4 - i - j), j, 0, (i 0) (4 - i)), i, 0, 4))
萧若茂继续修改简化:
扁平列表(映射(序列(序列((p; q; 0) + (0, 0, r), p, 0, n - r), r, 0, n), q, {0, π / 2}))
笔者提出:
这道题,有没有去除未定义对象,结果是一样的。
所以其实没有多余的未定义对象。
宗师江苏的孙生富还提出:
扁平列表(映射(序列(序列((pq,p(1-q),0)+(0,0,r),p,0,n-r),r,0,n),q,{0,1}))
大家都可以尝试一下。
反思1:
软件设计者可能从编程的角度为我们设计了一系列的指令,每个指令其实就是包含了一系列的程序,但是我们不需要懂程序里面的事情,我们只要符合指令的规范,就能做出相应的事情,我们应用者的难点在于何时何地要用这个指令,通过案例学习指令还是基本方法,而不是一条条的指令的去背。我觉得初学者还是一步步来比较好,逐渐理解嵌套指令的好处。
反思2:
学ggb确实有三种层次,第1层次是菜单工具,这样每个人都可以入门,然后第2层次是指令层次,指令层次这里要待很久时间,因为指令太丰富,本来就包含了四五百个指令,然后指令之间还可以嵌套,有可能软件设计者都没想到可以这么丰富。这样就增加了学习的困难,也有可能激发学习的乐趣!
反思3:
浙江潘立强老师还指出:把指令看成黑箱子,不必理解是如何实现的,只要明白输入什么,生成什么,也就是指令的功能。
指令的嵌套有很多情况是可以避免的,只有极少情况是必须的。
也就是说,上面的指令嵌套是可以分解成不需要嵌套的,对于初学者好理解的。
对于大部分使用ggb的老师而言,或者希望的是通过简单的指令操作(或者工具操作)辅助课堂教学。然而笔者也建议,多体会一些指令的嵌套,对于熟悉指令的用途也非常有好处。
……
【来源】公众号:初中数学综合题的教与学。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.