【经验分享】
1.通过坐标点工具设置拖动变量也可达到自由点拖动的效果,假若直接作自由点,拖动子对象时会影响到其他对象,而通过设置拖动变量时,拖动子对象不会影响到其他对象.
2.通过随机点轨迹制作小球下落路径,然后在小球下落路径上取半自由点表示下落小球,而不是直接用随机点表示下落小球.
3.高尔顿钉板迭代时,教程中用极坐标平移的方式把平移与缩放合二为一,所以比课件中少作了两个点,读者可以试着作一下,看二者有何异同.
4.两个变量或多个变量+串行动画按钮+if()函数+测量变量嵌套的配合使用,可解决一大类按条件累加计数问题.
5.当i变化一次,且u0=1(即小球落入球槽底部)时,则累加计数一次.(https://www.daowen.com)
6.i表示总的实验次数,好处是不用另外计算,重新实验时一定要按初始化按钮清0.
7.速度快慢可通过设置u0的动画步数来调节速度(步数与小球下落速度成反比),而变量i的步数只能为1.
8.在测量变量m11~m32累加计数时,以m11为例:假若到A、B两点重合时(即小球落入第一个球槽),由于测量精度(浮点数的原因),测量到A、B两点的距离m10可能是0.00000001,若m11内部测量内容为sign(i)*(m11+if(abs(m10-0*2*a)==0and(u0==1),1,0))时可能出现不累加计数的问题,修改为sign(i)*(m11+if(vpa(abs(m10-0*2*a),2,0)and(u0==1),1,0)),则可解决不累加计数的问题.
说明:函数vpa(num,digit,isfloor)的含义:num表示某个数字或某个变量,digit表示几位小数,isfloor处的数字为1表示取过剩近似值、isfloor处的数字为-1表示取不足近似值、isfloor处的数字为0表示四舍五入取近似值.
9.由于嵌套测量累加计数暂且还不支持迭代,所以计算值m11~m32(相当于变量存储器)即对落入各个球槽的小球个数是一个一个手工测量计算的,m33是扫描提取m11~m32的数据,最后用迭代完成落入各个球槽的计数问题(层数最多能为22).