当前位置:首页 >> 其它课程 >>

《用递归法解决问题》导学案


《用递归法解决问题》导学案 芜湖市田家炳实验中学导学案

第二课时 累计二课时

课题:用递归法解决问题(授课人:宣华)
高二年级 信息技术学科备课组

一、学习目标: 知识与技能: (1)了解递归的基本概念。 (2)知道适用递归解决问题的两个条件。 (3)初步了解用递归法解决简单问题的方法。 过程与方法: 经

历分析问题、推导公式、确定递归算法、编写递归程序解决简单问题的基本过程, 体会递归算法的设计过程 情感态度价值观: (1)在建立数学模型中培养抽象思维能力及多角度思考和解决问题的能力。 (2)在研究简单递归程序中增强自信心,并通过有趣的习题增加学习兴趣。 二、学习重、难点 教学重点:理解递归概念,初步建立递归思想,用递归法解决简单问题的方法。 教学难点:了解递归程序的执行过程;了解使用递归法设计算法的基本过程。 三、知识链接: 本节课内容取自《算法与程序设计》第三章第 5 节,学业水平测试对其达到了 B 级 要求。在本节前我们学习了 VB 程序三种基本结构,并且学习了用解析法和穷举法解决 问题等算法。为了保证“用递归法解决问题”相关内容的一课时教学,故将本节教材中 “自定义函数(过程) ”的知识提前完成。 本节知识点: (1)递归法概念:如果一个函数在定义时,直接或间接的调用了自己, 这种算法在程序设计中统称为递归法。 (2)分析得出使用递归算法要符合的条件,并总 结出递归法解决问题的步骤:推导递归关系式—>确定递归算法—>编写递归程序(3) 总结递归算法的优劣,具体情况具体分析,科学利用各种算法解决实际问题。 四、学习过程 1、问题导入(微课铺垫,略提) a、观察幻灯片上几幅图,你发现了什么规律么? b、观看小时候一个故事的 flash 动画,你又发现了什么? c、下发 d:\506\体验程序\循环算法.frm 和非循环算法.frm 程序,体验这两段程序,观察 结果,思考程序的作用 代码二:Private sub command1_click()
代码一: Private sub command1_click() Dim I as integer For i=1 to 50 Print “从前有座山??讲什么呢?讲的 是??” Next I End sub Story(50) End sub Private sub story(n as integer) If n=0 then Exit sub Else Print “从前有座山??讲什么呢?讲的是?” Story(n-1) End if End sub

1

《用递归法解决问题》导学案

2、典型例题 例题一:d:\506\体验程序\循环算法.frm 和非循环算法.frm。讨论:非循环算法程序中的 子过程中哪条语句使得故事中的文字不断、反复输出?(突破重点:递归法概念。感受 形式并进行课堂检测 1) 例题二:运行 d:\506\游戏\猜年龄.exe,建立数学模型;分析猜年龄.frm 代码,模拟递归法 解决问题的过程(了解递归法的本质,利用两个思考突破重、难点) 思考 1:递与归的转折点在哪?此时 n 等于几? 思考 2:什么样的程序适合用递归算法? 五、课堂检测 1、判断下列程序中是否应用了递归算法,为什么?
程序 2: 程序 1: Function f2(n as integer) as Function f1(a as integer) as integer integer If a=0 then dim a as integer f1=1 a=a+n Else f2=a f1=a*f1(a-1) End sub End if End sub 程序 3:Function f3(a as integer) as integer dim b as integer b=f3(a,b) f3=b End sub

2、完成进阶选择题。 3、根据视频资料,得知数列如下:1,1,2,3,5,8,13,21……请你分析其规律帮助警察推算 出该数列的第 20 项 任务:完善解密程序,计算出第 20 项。 打开 d:\506\实战应用文件夹下解密.frm 文件,填写划横线的区域(主要是转折点和解法 表达式的填写) ,并运行调试程序。 六、自我评价 能否在教师引导掌握以下知识点:使用递归算法的程序的形式和本质;使用递归算法要 符合的两个条件及递归法解决问题的步骤。 我能否积极利用微课预习、参与小组讨论、与他人合作 我能否善于思考练习,有条理的表达自己的不同看法 我能否指出同学错误的解答 我能否将生活中某些复杂的问题用递归算法简单化处理 七、课后作业 在课后拓展文件夹中,阅读 “汉诺塔问题的起源和解决.doc” ,尝试 “汉诺塔.swf” 游戏(如果有困难,可以借助“汉诺塔.frm”程序,它可以教你以最精简的步骤完成游 戏中的任务) ;分析“汉诺塔.frm”程序代码,进一步感受递归算法的“大事化小” 。
2

《用递归法解决问题》导学案

附部分程序代码: 猜年龄代码: (在猜年龄.frm 中)
Function age(n As Integer) As Integer If n = 1 Then age = 10 Else age = age(n - 1) + n End If End Function Private Sub Command1_Click() If Text1.Text = age(5) Then MsgBox ("真棒!你的答案是正确的") Else MsgBox ("再猜猜!") End If End Sub

3


相关文章:
3.5用递归法解决问题
《算法与程序设计》选修模块第三单元 的内容,本节课是“递归算法的程序实现”,...四、 教学重点·难点重点:理解什么是递归算法,学生用递归算法的思想分析问题 ...
《解决问题的策略》导学案
解决问题的策略》导学案_数学_小学教育_教育专区。五河县小学“三为主”课堂...(纠错栏) 学习目标: 1、学会用列表的方法整理稍复杂的信息。 2、经历从条件...
《用列举策略解决问题(1)》导学案
学习目标:能住的运用“一一列举”的策略解决实 五年级《用列举策略解决问题》导学案 际问题。 学习重点:通过列举能获得问题的答案。 2、 运用最直观的方法解决...
分数除法《解决问题》导学案(1)
分数除法《解决问题》导学案(1)_六年级数学_数学_小学教育_教育专区。课题: 《...会分析除法应用 题中的数量关系,学习用线段图表示题中数量关系的方法。 2、...
《用比例解决问题》导学案
《用比例解决问题》导学案六(2)班 主备人:范馨荔 课题: 用比例解决问题 ...实际上已经接触过, 只是用归一、 归总的方法 来解答, 这里主要学习用比例知识...
3.5《用递归算法解决问题》案例分析_图文
3.5《用递归算法解决问题》案例分析_其它课程_高中...知识与技能 教学 目标 过程与方法 情感态度 与价值..._递归算法与程序_教学案... 1页 1下载券 高中...
2015-2016学年《用牛顿运动定律解决问题(一)》导学案
2015-2016学年《用牛顿运动定律解决问题(一)》导学案_理化生_高中教育_教育专区。课时 4.6 用牛顿运动定律解决问题(一) 1.初步掌握动力学两类基本问题求解的基本...
高中导学案使用中存在的问题及解决措施
高中导学案使用中存在的问题解决措施使用导学案教学是一种比较新颖的教学方式,导学案使用彻底改变了教师的教学观 念和学生的学习观念。教师利用导学案指导学生...
用牛顿定律解决问题一 导学案
用牛顿定律解决问题一 导学案_理化生_高中教育_教育专区。导学案 《用牛顿定律解决问题(一) 》 导学案一、复习回顾:运动学的公式 牛顿第二定律的表达式 二、...
4.3.2《用一元一次方程解决问题》导学案
4.3.2《用一元一次方程解决问题》导学案_数学_初中教育_教育专区。4.3.2 用一元一次方程解决问题一、 【学习目标】 进一步学习用方程解决实际问题的基本步骤; ...
更多相关标签: