四种方法求阶乘

 

 

function fac(n:longint):longint;
var i:longint;
begin
    fac:=1;
    for i:=2 to n do fac:=fac*i;
end;

begin
    writeln(fac(3)+fac(5)+fac(6));
end.

 

 

 

function fac(n:longint):longint;
begin
    if n=1 then fac:=1
    else fac:=n*fac(n-1);
end;

begin
    writeln(fac(3)+fac(5)+fac(6));
end.

 

 

 

var
    a:array[1..10of longint;
    i:longint;
begin
    a[1]:=1;
    for i:=2 to 10 do a[i]:=i*a[i-1];
    writeln(a[3]+a[5]+a[6]);
end.

 

 

 

posted @ 2013-06-27 19:14  qilinart  阅读(330)  评论(0编辑  收藏  举报