课件14张PPT。会判断的小海龟
——带条件的递归过程 第11课欢迎同学们来到计算机课堂上课之前,首先让我们一起来端正一下坐姿吧! 打字姿势1234课文导入 同学们,你们可以想办法让小海龟自己判断,什么时候向左转,什么时候向右转,什么时候停下来吗?课文导入要让小海龟自己会判断,就要学会今天的条件命令。新课学习1.递归程序定义
一般递归程序都有至少一个变量,用以控制递归的次数。
例如:TO?? DBX? :B新课学习2.确定递归停止的条件
因为递归是自己调用自己,如果没有定义如何结束,那么程序将不断重复,不断循环,没有终点,所以第一个关键语句就是要确定什么时候,什么情况下停止递归。
例如:IF :B<3 STOP
其中,if,是判断语句,格式为IF(空一格) 条件(空一格)命令,
STOP 的作用是终止子程序。新课学习3.画图形的核心语句
递归图形,通常都是一种图形的有规律的重复,把这个最基本的图形找出来,写出命令。
例如:repeat? :B [FD 100 RT 360/:B](这是一个画边长为100的任意正多边形的命令行,B表示边数)新课学习4.调用自己的语句
例如:DBX :B-1
??????? 在调用自己的时候,通常为了让图形逐渐变化,后面的参数应该按照一定的规律进行变动,例如这里是边数B,每调用一次-1。这样,如果输入命令 DBX 10,那么第一次调用画出的就是正十边形,当遇到自己调用自己的这条语句,程序执行第二次,参数为10-1,也就是画出一个九边形,直到参数小于3,那么程序停止。新课学习5.结束子程序的语句
这个就简单了,就是END,就可以了。
所以以上语句完整的就是:
to?DBX :B? (定义子程序)
?if :b<3 stop (设定终止子程序的条件)?repeat :B[fd 100 rt 360/:B](画正多边形)?DBX :B-1(调用自己,并且每次调用B减去1)?END(结束)练一练画一画书上56页11-5的图形吧! 同学们,今天我们学到了哪些?想一想小结谢 谢