课件编号3730862

第10课 二带变量的递归 课件

日期:2024-05-16 科目:信息技术 类型:小学课件 查看:76次 大小:211259Byte 来源:二一课件通
预览图 1/9
10课,二带,变量,递归,课件
  • cover
课件24张PPT。二 带变量的递归同学们,你们能想象生活中有哪些类似的现象?从前有座山,山里有个庙,庙里有个老和尚讲故事,讲什么呢?从前有座山,山里有个庙…… 递归思想从前有座山你的眼睛他的眼睛递归法 如果一个函数在定义时,直接或间接地调用了自己,这种算法在程序设计中统称为递归法。?和尚移盘 一个庙里有三个柱子(A,B,C),第一个柱子( A )有7个盘子,从上往下盘子越来越大。要求庙里的老和尚把这7个盘子全部移动到第三个柱子( C)上。 规则:1、一次只能移动一个盘子 2、移动的时候始终只能小盘子压着大盘子 3、A柱和C柱不能相互直接移动。 第一个和尚想法 要是有一个人能把前6个盘子移动好,我移动最后一个盘子,我的任务就能完成了。 Pan(7)=2+pan(6)*3 第二个和尚想法 要是有一个人能把前5个盘子先移动好,我移动最后一个盘子,我的任务也能完成了。 Pan(6)=2+pan(5)*3……? 一直找下去,直到找到第六个和尚为止 pan(2)=2+pan(1)*3? 第七个和尚移盘 把第一个盘子先移动到第二个柱子上,然后再移动到第三个柱子上。 Pan(1)=2?第六个和尚移盘Pan(2)=2+pan(1)*3=8?第五个和尚移盘Pan(3)=2+pan(2)*3=26……Pan(7)=2+pan(6)*3=2186?第一个和尚移盘Pan(7)=2+pan(6)*3Pan(6)=2+pan(5)*3Pan(5)=2+pan(4)*3Pan(4)=2+pan(3)*3Pan(3)=2+pan(2)*3Pan(2)=2+pan(1)*3Pan(1)=2问题下推结果回归递归算法的实现方式:函数的调用和尚移盘算法的实现方式:自定义函数的调用和尚移盘算法的自定义函数:pan(n)和尚移盘算法的实现:Pan(n)=2+pan(n-1)*3Pan(1)练一练桌面:作业和尚移盘和尚移盘.frm递归算法有什么特点?1、递归法:函数直接或间接地调用了自己3、递归必需要有结束条件2、递归分为递推(问题下推)与回归(结果回归)两个过程4、递归函数的调用方式相当耗费计算机资源,因而其效率比较低想一想1.Public Function story( byval n as integer ) as integer If n==0 then end else story=story(n-1) end if end Function想一想2.public sub f(byval n as long ) Dim a as long a=a+n print n end sub3.Public Function f(byval a as integer)as integer dim b as integer f=f(a,b) end fuction 经典数学问题1)1+2+3+……N 2)N!试一试?知识回顾 2、下面哪个问题可以用递归法解决? (1)钻石图案 (2)百鸡百钱 (3)加密程序 (4)汉诺塔1、递归分为 ( ) 与( ) 两个过程。3、只要调用函数都是递归法?4、递归法必需要有结束条件?现实生活 → 一层梦境 → 二层梦境 → 三层梦境 → 四层梦境 现实生活 ← 一层梦境 ← 二层梦境 ← 三层梦境 ← 四层梦境 ?课后思考 讨论本章学习的五种算法,从程序的执行效率、代码编写的方便性、可读性等方面,分析它们各自的特点,指出其适用范围。谢谢 ... ...

~~ 您好,已阅读到文档的结尾了 ~~