高中信息技术_4.5递归算法与递归程序教学课件设计
- 格式:ppt
- 大小:985.50 KB
- 文档页数:8
1.教材分析“算法的程序实现”是高中信息技术教育出版社《算法与程序设计》选修模块第三单元的内容,本节课是“递归算法的程序实现”,前面学习了用解析法解决、穷举法解决、在数组中查找数据、对数进行排序以及本节的前一小节知识点“什么是自定义函数”的学习,,在学习自定义函数的基础上,学习递归算法的程序实现是自定义函数的具体应用,培养学生“自顶向下”、“逐步求精”的意识起着重要的作用。
2.学情分析教学对象是高中一年级学生,前面学习了程序设计的各种结构,在学习程序设计各种结构的应用过程中的培养了用计算机编程解决现实中的,特别的学习循环语句的过程中,应用了大量的“递推”算法。
前一节课学习了如何自定义函数,在此基础上学习深入学习和体会自定义函数的应用。
以递推算法的逆向思维进行求解,在学习过程中体会递归算法的思想过程。
多维度的思考和解决是提高学生的学习兴趣关键。
教法任务驱动、演示法、讲解法、小组合作学习教具计算机房上机实习。
教师活动1.直接引入新课1)提出新概念----递归在定义过程或函数时又岀现了调用本过程或者函数的成分, 用了它自己本身,这称为递归。
2)通过两个事例理解什么是递归①《老和尚讲故事》故事从前有座山,山里有个庙,庙里有个老和尚会讲故事,讲什么呢?从前有座山,山里有个庙,庙里有个老和尚会讲故事②两面镜子互映(教师准备好两面镜子)在每面镜子中都有对面镜子的像,同时在像中也应该有和像同样的场景........ ,每个镜子中的像是什么样子呢?即调3)通过典型数学习题体会递归算法有5个人坐在一起,问第5个人多少岁,他说比第4个人大2岁;问第4个人多少岁,他说比第3个人大2岁;问第3 个人多少岁,他说比第2个人大2岁;问第2个人多少岁,他说比第1个人大2岁;最后问第一个人多少岁,他说是10岁,请问第5个人多少岁?2.新课讲解(用递归算法解题的一般过程)例10 (n=1)步骤一、建立数学模型以上题为学生活动设计意图认真听讲脑海中勾画出故事的画面,体会什么是递归。
《递归算法与递归程序》教学设计一、教学目标:1.了解递归算法的基本概念和原理;2.能够运用递归算法解决实际问题;3.掌握递归程序的编写方法;4.培养学生的逻辑思维能力和问题解决能力。
二、教学内容:1.递归算法的概念和原理;2.递归程序的编写方法;3.递归算法的应用。
三、教学重点:1.递归算法的基本概念和原理;2.递归程序的编写方法。
四、教学难点:1.理解递归算法的原理;2.掌握递归程序的编写方法。
五、教学准备:1.教学课件;2.计算机实验室。
六、教学过程:Step 1:导入新知识(5分钟)教师简要介绍递归算法的定义和原理,引起学生的兴趣。
Step 2:逐步讲解递归算法的实现过程(15分钟)1.首先,教师通过实例讲解递归算法的基本思想和实现过程。
例如,实现一个计算n的阶乘的递归函数;2.其次,教师演示如何通过递归实现斐波那契数列;Step 3:让学生进行小组讨论(10分钟)学生分成小组,互相讨论递归算法的应用场景,并提出问题。
Step 4:学生进行实践操作(20分钟)1.学生根据教师提供的案例,自行编写递归程序;2.学生互相交流和讨论,共同探索递归算法的应用。
Step 5:教师总结并展示优秀作品(10分钟)教师总结学生的实践情况,并邀请优秀作品进行展示和分享。
Step 6:课堂小结(5分钟)教师对本课内容进行总结,并提出问题,激发学生的思考。
七、教学方法:1.讲授法:通过课件和实例讲解递归算法的基本概念和原理;2.实践操作:让学生进行编程实践,培养实际操作能力;3.小组讨论:学生互相讨论,共同探索递归算法的应用;4.总结分享:教师总结学生实践情况,并邀请优秀作品进行分享。
八、教学评价:1.学生在编写递归程序时的操作是否规范、正确;2.学生在小组讨论中的参与度和提问能力;3.学生在实践操作和展示过程中的表现。
九、教学延伸:1.学生可以继续深入研究递归算法的应用场景,拓宽解决问题的思路;2.学生可以进一步优化递归程序,提高效率;3.学生可以继续学习其他高级算法,如动态规划等。
递归 课程设计一、课程目标知识目标:1. 让学生理解递归的概念,掌握递归算法的基本原理和应用。
2. 学会运用递归解决实际问题,如求解数学问题、处理数据结构等。
3. 了解递归在计算机科学中的重要性和局限性。
技能目标:1. 培养学生独立设计递归算法的能力,提高编程实践操作技能。
2. 能够分析递归算法的时间复杂度和空间复杂度,并进行优化。
3. 学会运用递归思想解决实际问题,培养逻辑思维和问题解决能力。
情感态度价值观目标:1. 激发学生对递归算法的兴趣,培养学习计算机科学的热情。
2. 培养学生的团队协作意识,学会在合作中共同解决问题。
3. 引导学生认识到递归在现实生活中的应用价值,提高对计算机科学的认识和认同。
课程性质:本课程为计算机科学相关学科的基础课程,旨在让学生掌握递归思想及其在实际问题中的应用。
学生特点:学生处于具备一定编程基础和逻辑思维能力的高年级阶段,对复杂问题有一定的分析解决能力。
教学要求:结合课本内容和实际案例,注重理论与实践相结合,强调学生的动手实践和团队协作能力培养。
通过本课程的学习,使学生能够熟练运用递归算法解决实际问题,并为后续相关课程打下坚实基础。
二、教学内容1. 递归概念与原理:介绍递归的定义、基本原理以及递归函数的构成要素。
- 课本章节:第三章第三节- 内容:递归定义、递归调用、递归条件、递归与循环的关系2. 递归算法设计与应用:讲解如何设计递归算法,分析递归算法的应用场景。
- 课本章节:第三章第四节- 内容:递归算法设计方法、递归算法应用实例、递归算法的优缺点3. 递归算法实践:通过实例讲解递归算法在实际编程中的应用。
- 课本章节:第三章第五节- 内容:递归求解数学问题、递归处理数据结构、递归优化4. 递归算法复杂度分析:分析递归算法的时间复杂度和空间复杂度,并进行优化。
- 课本章节:第三章第六节- 内容:递归算法复杂度概念、递归复杂度分析方法、递归优化策略5. 递归思想在实际问题中的应用:探讨递归思想在计算机科学及其他领域的应用。
《递归算法与递归程序》教学设计一、教学目标1、知识与技能1)能够从思想和特点上理解什么是递归算法2)学会分析问题,能够建立合理的的递归数学模型3)能够自主设计递归函数解决实际问题2、过程与方法:1)通过分析身边的实例,理解递归算法的思想和特点2)通过通过层递的案例,理清递归法解决问题的过程3、情感态度与价值观:1)通过实际问题的解决,激发学生数学建模的意识和设计方法2)通过学习新的思维方式,培养学生多维度思考和解决问题的意识3)通过对递归算法解决问题的效率分析,使学生能更全面的认识和理解递归算法二、教学重点与难点1、教学重点1)理解什么是递归算法2)能够建立合理的的递归数学模型3)能够设计递归函数解决实际问题2、教学难点:1)能够建立合理的的递归数学模型2)能够设计递归函数解决实际问题三、教学方法主要采用讲授法、演示法、案例分析法、任务驱动法。
四、教学过程1、让学生演示常用报数方式。
引导学生分析得出答案的过程。
引出递推思想。
2、让学生演示一种另类的报数方式。
引导学生分析得出答案的过程。
引出递归思想。
递归法,相对于学生来说是比较抽象的,通过学生的两种演示、分析,能让学生从感性上对递归思想有一个形象的认识,从而能够更好的展开本节课的学习。
(或过程)倾听、分析思考通过展示递归定义,让学生从概念s as As 该案例与报数游戏思路完全一致,学生很容易找出关系式,建立数学模型。
通过进一步分析递归函数,让学生理解什么是自身调用自身?什么是递和归?通过案例1的学习分析,了解了递归思想,进而以归纳的方式展示递归思想的内涵,有助于学生更好的把握递归思想。