文档介绍:
【教材分析】
“用递归法解决问题”是《算法与程序设计》第三章第5节的内容,学业水平测试对本节内容也达到了B级要求,本节内容是在学习了VB基础知识中的三种基本结构,并且学习了数组、用解析法和穷举法解决问题等算法。本节先后介绍了“什么是递归法”、“自定义函数”、以及应用自定义函数结合递归算法来解决问题实例。通过本节内容的学习可以培养学生分析和分解问题的能力。从教材的结构上看“自定义函数”和“递归算法”是独立的,可以分别讲解,但在使用时两者是相辅相成的。
【学情分析】
这节课的教学对象是高中二年级学生,已经学习了算法与程序设计VB中的一些基础知识,初步了解了算法的概念。特点是在学习循环结构的过程中,学生已经积累了一些“递归”和“穷举”的算法。但是学生对函数尤其是“自定义函数”非常陌生,而“自定义函数”和“递归法”是本册的学习重点,也是以后编程的重点。学习本节内容学生可以充分体会递归算法的思想过程,扩大原来的知识面,进一步认识程序设计的功能,进一步激发学生学习算法与程序设计的兴趣。
【教学目标】
:
理解什么是递归法,会用递归法的思想分析和解决问题
理解什么是自定义函数,能应用自定义函数实现递归算法的编程
学生通过思考、探究,体验递归算法和发现问题与解决问题的步骤
在建立数学模型中培养学生的抽象思维能力,培养学生多维度思考问题和解决能力。
树立多学科整合的思想意识,能够用联系的观点解决问题。
【教学重点】
理解什么是递归算法,学会用递归法的思想分析问题。
理解自定义函数的概念。
【教学难点】
用自定义函数和递归算法编写程序解决问题
【教学方法及策略】
采用程序展示法、讨论总结法、讲解法、启示引导法。
本节以一简单的例子对比VB中提供的标准函数,引出本节的第一项内容,自定义函数并加以讲解使学生掌握自定义函数的方法,由于理解和学习递归法比较困难,要求学生具有很强的抽象思维能力,如直接讲解则学生很难达到预期效果,在讲递归法之前是我让5位具有表演天赋同学表演一场戏(5人的年龄问题),创造递归情境,同时留下问题“第一位同学应该怎么说?”通过问题情境引出和深化学生对递归算法的理解。当然本节内容这个步骤也可以交换顺序。同时鼓励和引导学生探讨递归法解决问题的条件和特点并加以归纳和总结。
教学中所用到的素材:
1、输入圆半径,可求圆面积的小程序VB源文件。
2、斐波那契数列VB源文件。
3、极域电子教室广播系统
4、电子课件
【教学过程】
环节
教师活动
学生活动
设计意图
复习标准函数提出问题
复习函数:
y=abs(9)
y=int(9)
y=sqr(9)
以上函数可以对9求绝对值,取整,开平方。提出问题:有没有可以求以9为半径的圆的面积。
思考、讨论、找答案
结果:没有这样的函数
提出问题激发学生兴趣和求知欲
启
发
主
体
进一步提出问题:
我们怎样实现求圆的面积的程序呢?请同学们编写程序在文本框中输入半径求圆的面积
学生探究:
得出结果
mand1_Click()
Dim r, s As Single
Const pi =
r = Val()
s = pi