用递归法解决问题导学案.docVIP

  • 2
  • 0
  • 约2.33千字
  • 约 3页
  • 2017-09-02 发布于浙江
  • 举报
用递归法解决问题导学案

芜湖市田家炳实验中学导学案 第二课时 累计二课时 课题:用递归法解决问题(授课人:宣华) 高二年级 信息技术学科备课组 一、学习目标: 知识与技能: (1)了解递归的基本概念。 (2)知道适用递归解决问题的两个条件。 (3)初步了解用递归法解决简单问题的方法。 过程与方法: 经历分析问题、推导公式、确定递归算法、编写递归程序解决简单问题的基本过程,体会递归算法的设计过程 情感态度价值观: (1)在建立数学模型中培养抽象思维能力和解决。理解递归,本节内容《算法与程序设计》第三章第5节学业水平测试对达到了B级要求学习了VB三种基本结构,并且学习了用解析法和穷举法解决问题等算法。a、观察幻灯片上几幅图,你发现了什么规律么? b、观看小时候一个故事的flash动画,你又发现了什么? c、下发d:\506\体验程序\循环算法.frm和非循环算法.frm程序,体验这两段程序,观察结果,思考程序的作用 典型例题 例题一:d:\506\体验程序\循环算法.frm和非循环算法.frm。讨论:非循环算法程序中的子过程中哪条语句使得故事中的文字不断、反复输出?(突破重点:递归法概念。感受形式并进行课堂检测1) 例题二:运行d:\506\游戏\猜年龄.exe,建立数学模型;分析猜年龄.frm代码,模拟递归法解决问题的过程(了解递归法的本质,利用两个思考突破重、难点) 思考1:递与归的转折点在哪?此时n等于几? 思考2:什么样的程序适合用递归算法? 五、课堂检测 1、判断下列程序中是否应用了递归算法,为什么? 完成进阶选择题。 根据视频资料,得知数列如下:1,1,2,3,5,8,13,21……请你分析其规律帮助警察推算出该数列的第20项 任务:完善解密程序,计算出第20项。 打开d:\506\实战应用文件夹下解密.frm文件,填写划横线的区域(主要是转折点和解法表达式的填写),并运行调试程序。 六、自我评价 能否在教师引导掌握以下知识点:使用递归算法的程序的形式和本质;使用递归算法要符合的两个条件及递归法解决问题的步骤。 我能否积极利用微课预习、参与小组讨论、与他人合作 我能否善于思考练习,有条理的表达自己的不同看法 我能否指出同学错误的解答 我能否将生活中某些复杂的问题用递归算法简单化处理 七、课后作业 在课后拓展文件夹中,阅读 “汉诺塔问题的起源和解决.doc”,尝试 “汉诺塔.swf”游戏(如果有困难,可以借助“汉诺塔.frm”程序,它可以教你以最精简的步骤完成游戏中的任务);分析“汉诺塔.frm”程序代码,进一步感受递归算法的“大事化小”。 附部分程序代码: 猜年龄代码:(在猜年龄.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 《用递归法解决问题》导学案 1 代码一: Private sub command1_click() Dim I as integer For i=1 to 50 Print “从前有座山……讲什么呢?讲的是……” Next I End sub 代码二:Private sub command1_click() 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 代码二:Private sub command1_click() 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 代码一: Private sub command1_click() D

文档评论(0)

1亿VIP精品文档

相关文档