《递归-教学设计(表格式).docx》由会员分享,可在线阅读,更多相关《递归-教学设计(表格式).docx(4页珍藏版)》请在优知文库上搜索。
1、教学设计课程基本信恩课题5.2迭代与递归二)递归鞅学Fl标1 .通过小猴摘桃产启发理解递归的算法思想.2 .引导能合理选用数据结构,理清递归公式及结束条件,理归的递推与回归两个阶段,3 .通过实例的形式用自然语言、流程图、PylhUn语言描述递归算法.4 .引导学生掌樨递归算法的一般设计思路.5 .引导学生自觉应用遂归Jr法,解决生活、学习中的问时。教学内容一教学里点:1 .递归公式及结束条件,递也的递推与回归两个阶段.2 .自觉应用递归算法,解决生活、学习中的何超.教学观点:自觉应用递归算法,解决生活、学习中的问题。教学过程一、认识木节课的学习目标,自学教材内容。二、情境导入:猜猜E娃娃有几
2、个铜币?ABCDE三、递仃算法基本思想:通过函数自己调用自己来实现,也就是在其定义中直接或间接调用自身的方法,称之为递归。1.确定递归公式2、确定递归结束条件四、递归尊法的执行过程1.递推:将复杂的问题(规模为n)的求解递推出一些简单的问题(规模小于n)的求解。此阶段.必须有终止递推的情况.2、回归:获得最简单情况的解后,逐级返回依次得到梢复杂问Jg的解。逐层调用,宜到边界(递推)代入计算,依次返回(回归)五、递归实现要点:(1)有明确的结束递归的边界条件(终止条件)及终止时的边界值.2)函数的描述中包含其木身。抽象建模设计算法 3)编写程序并调理六、课堂实践:川逸必算法求n的阶乘七、递归的作
3、用1、分解成规模较小的同类里问题。2.用递归函数昔代多重循环.3、解决本来就是用递归形式定义的问题.八、课堂小练:(1)用递归算法求裴波那契敦列为:1,I,2,3,5,8,13填空deffx(n):ifn2:else:returnfprint(fx(10)2)程序设计并1试:一个程序,输一个楼梯有n阶,上楼可以一步上一阶,也可以一步上二阶,要求:编写入一个正整数n(表示楼梯阶数),除出共有多少种不同的走法可以到达第n阶.九、汉诺塔游戏:1 .抽象与建模2 .设计算法3 .编写程序十、课堂小结1、递归算法的概念2、递归律法的两个条件和阶段十一,自我评价时自己的去现JS行齐观的评价,并思考后续完善
4、的方向。(3=优秀,2=-般,1=仍需加油)十一、课后作业1.求最大公约数:早在公元前300年左右,欧几电得就在他的箸作O1.何原本3中给出了尚效的解法一一将转相除法.楸特相除法的方法是用较大的数X除以较小的数Y.得到余数Z评分项自我评价能计算小泯摘桃并总结递归算法的基本思想321掌握递归算法的两个条件和两个阶段321能自主学习教材并用自辨语言、PyIhUn语言描述递归算法321能够辨程实现斐波那契数列、阶乘的递归实现321拿掷速打算法的设计思路,理解其数学原理和注意事项321能用递归算法解决学习、生活中的应用321如果余数为0,则较小数Y就是两者的股大公约数,例如:33和9的最大公约数就是9
5、与6的最大公约数3defgcd(a,b):ifa%b=0:returnbelse:returns11,n=map(int,input0.split0)Print(gcd(m,n)以下程序#号划线处代码为()A.aB.gcdb,ab)1 .gcd(b,ab)D,cdb,a)2 .defzh(n):ifn2).为求该数列的笫n项值,现利用递归算法实现,Python代码如Ki青在划城处填入合适的代码.defyuan(x):ifx=2:returnelse:n=int(input(n=*)print(yuan(n)作业答案:1. B2. B3. 1return3yuan(x-l)*2*yuan(-2)