视频标签:递归算法,递归程序
所属栏目:信息技术优质课视频
视频课题:粤教版高中信息技术选修1算法与程序设计4.5递归算法与递归程序-陕西省 - 西安
本视频配套资料的教学设计、课件 /课堂实录及教案下载可联本站系客服
递归算法初识
一、 教学目标 1、 了解递归算法的基本概念及其执行过程 2、
初步知道用递归算法解决问题的方法
二、 重点难点分析 1、 重点:递归算法的特点及执行过程。
2、
难点:理解递归算法并能使用递归解决实际问题。
三、 主要教学过程
(一) 引入
认识递归,引入新课
使用递归生活中的特定现象图片引出递归现象,通过类比引出递归算法。
增加对递归现象的感性认识(自己显示自己) (二) 新课讲授
活动1(认识递归算法的特点) 出示问题:猴子摘桃子问题
已知第10天桃子数量为1,求第1和7天桃子的数量 ○
1提取关键信息并归纳递推关系: 已知: tao (10) =1
西安交大附中 高二年级信息技术·VB程序设计 【授课教师:周杰】
第 2 页 共 3 页
推导: tao(9) =4 = 2*(tao(10)+1) tao(8) =? =2*(tao(9))+1) …
tao(n) =? =2*(tao(n-1)+1) ○
2师生总结数学递推式: tao(n)=2(tao(n-1)+1) n<10 tao(n)=1 n=10 ○
3转化为递归函数: 伪代码:
function tao (n ) as integer 如果n=10 则 tao=1 否则
tao=2*(tao(n+1)+1) end function
讲授:递归算法在函数定义中的体现,即自己调用自己。 提问:递归算法描述的特点是什么? 将算法转换为代码 展示代码:
Function tao(n As Integer) If n=10 Then tao=1
Else
tao=2*(tao(n-1)+1)
Endif
西安交大附中 高二年级信息技术·VB程序设计 【授课教师:周杰】
第 3 页 共 3 页
End Function
讲授与演示递归的执行过程(回答前面的提问)
猴子摘桃子问题中递归函数执行过程,分部演示递归函数执行过程。 小结:递推执行过程:递推+回归。
活动2:想一想,议一议
依据算法分析,在学案中完成并运行猴子摘桃子程序。 依据学案中提出的三个问题思考导致答案其原因。 问题1目的:辨析递归调用模型
问题2设置递归不能正常结束的数据,使学生明确递归程序中结束条件的重要性
问题3 回顾递归的运行特点
归纳学案中提出的问题,总结递归法解决问题的2个条件: 1必须要有递归结束条件
2问题的解决的模型相同、规模不断变小
活动3:练一练
尝试完成学案中演示的画中画程序,进一步熟练递归算法。
活动4:弹性作业
通过汉诺塔游戏,思考复杂的递归问题。并尝试补全程序。
三、课堂小结
递归的含义:自己调用自己 递归的执行:递推和回归
递归解决问题的条件:规模不断缩小、有结束条件
视频来源:优质课网 www.youzhik.com