网站大量收购独家精品文档,联系QQ:2885784924

《用递归法解决问题》学习工具制作综述.docx

《用递归法解决问题》学习工具制作综述.docx

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

《用递归法解决问题》学习工具制作综述

1.交互式PowerPoint

本学习工具是交互式的PowerPoint授课方式,可以实现学生全程参与讨论。学习工具采用了PowerPoint2016特有的缩放定位功能,可以使课件章节衔接更加流畅,内容更加清晰。

2.ISpringsuite在线练习

本学习工具通过PowerPoint与iSpringSuite软件的完美融合实现了交互式练习。学生在课堂上巩固所学内容,教师可以掌握学生的理解情况。

3.VB小程序演示

本学习工具中运用了VisualBasic设计的小程序,结合学生所学知识,演示递归法的运算过程,让学生更深刻地理解所学的内容。

4.课件发布功能

PowerPoint2016与iSpringSuite提供了发布课件的功能,能轻松地实现在线网络学习。

设计思路与教学過程

1.教材分析

“算法的程序实现”是教育科学出版社出版的《算法与程序设计》教材中第三单元的内容。本节课的内容是“递归算法的程序实现”。学生已经学习了用解析法解决问题、穷举法解决问题、在数组中查找数据、对数进行排序以及本节的前一小节知识点“什么是自定义函数”。在学习自定义函数的基础上,学生学习递归算法的程序实现是自定义函数的具体应用,培养了“自顶向下”“逐步求精”的意识。

2.学情分析

3.教学目标

知识与技能目标:理解什么是递归算法;用递归算法的思想分析问题;能够应用自定义函数方法实现递归算法的编程。

过程与方法目标:学生参与讨论,通过思考、动手操作,体验递归算法的方法。

情感态度与价值观目标:结合数学中的实例,激发数学建模的意识,培养多维度思考问题和解决问题的能力。

4.教学重点与难点

重点:理解什么是递归算法,用递归算法的思想分析问题;应用自定义函数方法实现递归算法的编程。

难点:应用自定义函数方法实现递归算法的编程。

5.教学环境

网络教室,教学软件VB,PowerPoint多媒体一体机讲授。

6.教学过程

(1)创设情境,提出课题

师:上课之前讲从前有座山,山上有个庙的故事……

学生一起开始默念这个故事……

师:这个故事给了我们一个什么启示呢?

教师黑板板书:推算→(故事里的人讲下一个相同的故事)一步步地推出下一个故事。

师:这就是我们常用的递推算法。

教师引导学生(以这个故事的方式引出递归的过程):这就是本节课我们学习的递归算法思想——递归就是函数之间的调用。

设计意图:激发学生学习求知欲,并初步奠定“递归算法”思考分析问题的方法。

(2)启发主体,导出VB自定义函数的概念

在VB中,自定义函数形式如下:

[Public|Private]Function函数名称([参数列表])[As类型]

局部常量、变量定义

函数名称=返回值

EndFunction

自定义函数的调用,可以有三种格式:

变量=函数名称(参数)

Call函数名称(参数)

函数名称参数

(3)深入学习递归算法的实现

教师展示递归算法的动画演算过程,分析演算过程。通过演算过程,教师引导学生总结出递归算法的两个必备条件。

①递归分为递推与回归两个过程。

②递归必须要有结束条件。

③递归算法的实现方式:递归算法是数值层层调用实现的,函数先由上向下调用,当达到最底层后,再将数值层层向上返回。(在函数层层调用的过程中,参数的改变)

递归法的实现之一

有人养了一对兔子,这对兔子以后每月生一对兔子,新生兔子从第三个月开始,也是每月生一对兔子,问12个月后这人有多少对新生兔子?新生兔子示意图如图1所示。

①怎么将问题推下去?

②怎么将结果回归?

设计意图:在学生初步认识递归算法的演算过程及特点以后,教师提出递归算法程序设计实现的关键问题,层层深入地引导学生思考问题,培养学生分析和发现问题的能力。

用递归法实现,参考代码如下:

PublicFunctionS(NAsInteger)AsInteger

IfN=1OrN=2Then

S=S(N-1)+S(N-2)

EndIf

EndFunction

递归法的实现之二

如图2所示,从左到右有A、B、C三根柱子,其中A柱子上面有从小叠到大的n个圆盘,现要求将A柱子上的圆盘移到C柱子上去,其间只有一个原则:一次只能移一个盘子且大盘子不能在小盘子上面,求移动的步骤和移动的次数。

设计意图:通过汉诺塔的模型让学生更加深入地认识递归的用处,以及如何用函数来实现递归的过程,培养学生解决问题的能力。endprint

程序代码:PrivateSubCommand1_Click()

Me.MousePointer=vbHourglass注意:盘子的数量不要大于10,

CallHanoi(5,A,B,C)

Me.MousePointer=vbNor

文档评论(0)

ZC强 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档