资源简介 第11课递归调用真奇妙一、活动目标:1.了解递归的基本含义2.了解尾递归的基本含义3.学会编写简单的递归过程画图4.初步了解编写简单递归过程的基本方法二、活动难重点:1.理解掌握递归的特征2.过程的递归以及递归是怎样运行的3.学生会简单的调用递归三、教学方法:讲解、任务驱动式教学方法。四、教学准备:LOGO编程软件、学生练习的图形、题目,相关的电脑设备等。五、教学过程:1.出示课件图片,导入新课。2.什么是递归(1)通过分析执行观察P72的例子,理解什么是递归过程。小海龟在绘图窗口中高速运动,不断地重复着“画线、转向;再画线、再转向……”的动作。可以发现,小海龟不会自己停下来,线也越画越密,这时,可以单击工具栏中的中断按钮,小海龟才会停下来,命令窗口会显示“Stopped!”,表示已经停止了执行过程。(2)在LOGO系统中,把一个过程调用它自身的操作叫做递归。把含有递归操作的过程叫作递归过程。(3)在执行递归过程时,可以单击工具栏中的暂停、继续,可以执行暂停或继续递归过程。3.尾递归(1)调用平移画圆的这个过程,小海龟会完成下列操作。第一行命令,画一个圆,第二行命令,让小海龟沿水平方向右移10步第三行命令,调用本身再次顺序执行第一、二、三步的操作。因此在实际操作中,小海龟会从左向右画一连串的圆,同时弹出名为“Graphics”的提示框。关闭提示框,让小海龟继续画圆,需要停止时,单击工具栏中的中断按钮即可。4.自动修改变量值的尾递归带变量的过程也可以含有递归调用。在画旋转长方形的尾递归中B1和B2是变量,分别表示长方形的长和宽。第一行命令,画一个边长为B1和B2的长方形。第二行命令,使小海龟右转15度。第三行命令,用已输入的变量值调用过程本身,再次按顺序执行第一、二、三的操作。请同学在学习调用过程中仔细观察并分析调用过程。运行用尾递归画螺旋线,分析理解尾递归的调用过程。5.WAIT数值(1)WAIT是等待命令。例如:WAIT100约可以等待1秒(2)这个递归调用过程中的:LXX:X+5,它不是变量,而是一个表达式。X+5,这个命令是在变量X原有的值加上5,并把结果代入变量X中。然后再调用LXX。理解、分析这个递归调用过程,及表达式X+5的调用过程。动手做:修改过程LXX,递归时小海龟转角不断变化这个过程中的两个变量X、J。这个过程中,变量X不变,变量J的数值自动增加10,使小海龟每次右转时,此上一次转10度。为变量J输入适当的角度,可以指挥小海龟画出不同的图形。练习并观察分析(P76-P77)六、思考与练习(P78)(共10张PPT)递归调用真奇妙引入新知什么是递归观察一个例子1、定义下面的一个过程。TOSXSFD130RT110SXSEND2、执行下面的命令,调用这个过程。DRAWSXS3、关闭提示框,继续观察。4、单击工具栏中的中断按钮,才会停下来。在LOGO系统中,把一个过程调用它自身的操作叫作递归。把含有递归操作的过程叫作递归过程。执行递归过程时,可以单击工具栏中的暂停按钮,暂停执行过程。需要继续执行时再单击继续按钮。继续暂停中断尾递归例:TOPYREPEAT360[FD1RT1]RT90FD10LT90PYEND在递归过程中,如果调用过程自身的命令(过程名)出现在过程体中END命令前一行的末尾,那么这种递归就叫作尾递归。自动修改变量值的尾递归带变量的过程也可以含有递归调用。例:(动手做)TOCF:B1B2REPEAT2[FD:B1RT90FD:B2RT90]RT15CF:B1:B2END动手做:用尾递归画螺旋线(P75)思考与练习1、定义画不同角度的螺旋线的过程。2、仔细阅读下面的递归过程,在LOGO系统中进行定义,行执行CS和ST命令,再调用它们。想一想每步操作与所画图形的对应关系。3、输入下面的递归过程并调用它们,注意观察画出的图形,仔细想一想每条命令与图形的对应关系。 展开更多...... 收起↑ 资源列表 第11课 递归调用真奇妙.docx 第11课 递归调用真奇妙.pptx