上海科技教育出版社版高中信息技术选修1算法与程序设计:递归法.pptVIP

  • 22
  • 0
  • 约1.98千字
  • 约 14页
  • 2019-11-14 发布于江西
  • 举报

上海科技教育出版社版高中信息技术选修1算法与程序设计:递归法.ppt

上海科技教育出版社版高中信息技术选修1算法与程序设计:递归法.ppt

递归法 递归算法 递归程序设计是Pascal语言程序设计中的一种重要方法,它使许多复杂的问题变得简单,变得容易解决。递归算法的特点是:函数或过程调用它自己本身。其中直接调用自己称为直接递归;而把a调用b,b调用a的递归叫做间接递归。 例1 给定n(n≥1),用递归方法计算1+2+3+4+(n-1)+n。 【算符分析】 本题可以用递归方法求解,其原因在于它符合递归的三个条件: 1、本题是累加问题:当前和等于前一次和加上当前项,并且前一次计算法与其相同。 2、给定的n是有限次的递归调用。 3、结束条件是当n=1时,s=1。 program ex1; var s,t:integer; function fac(n:integer):integer; begin if n=1 then fac:=1 else fac:=fac(n-1)+n; end; begin read(t); s:=fac(t); writeln(s=,s); end. 例1 给定n(n≥1),用递归方法计算1+2+3+4+(n-1)+n。 例2 Hanoi汉诺塔问题 program ex2; var x,y,z:char; n,k:integer; procedure move(n:integer;a,c,b:char); begin

文档评论(0)

1亿VIP精品文档

相关文档