合肥
合肥奥数网

合肥站
奥数网

信息学竞赛常用算法与策略:递归

合肥奥数网整理 2013-01-17 14:46:25

  合肥奥数网讯:信息学竞赛常用算法与策略:递归。

  递归是计算机科学的一个重要概念,递归的方法是程序设计中有效的方法,采用递归编写

  程序能是程序变得简洁和清晰.

  2.1 递归的概念

  1.概念

  一个过程(或函数)直接或间接调用自己本身,这种过程(或函数)叫递归过程(或函数).

  如:

  procedure a;

  begin

  .

  .

  .

  a;

  .

  .

  .

  end;

  这种方式是直接调用.

  又如:

  procedure          b;   procedure c;

  begin                begin

  .                                   .

  .                                   .

  .                                   .

  c;                               b;

  .                                  .

  .                                  .

  .                                  .

  end;                end;

  这种方式是间接调用.

  例1计算n!可用递归公式如下:

  1  当 n=0 时

  fac(n)={n*fac(n-1) 当n>0时

  可编写程序如下:

  program fac2;

  var

  n:integer;

  function fac(n:integer):real;

  begin

  if n=0 then fac:=1 else fac:=n*fac(n-1)

  end;

  begin

  write('n=');readln(n);

  writeln('fac(',n,')=',fac(n):6:0);

  end.

首页 上一页 下一页 尾页

相关推荐

点击查看更多
重点初中
首页 导航