free pascal 递归讲解

2025-02-26 05:21:14
推荐回答(3个)
回答1:

你的程序写的有问题,标程如下:
题1:
procedure print(i:integer);
begin
if i<101 then write(1);
print(i+1);
end;
begin
print(1);
end.

题2:
procedure print(i:integer);
begin
if i<101 then write(i);
print(i+1);
end;
begin
print(1);
end.

回答2:

就是一种在程序中函数或过程中调用自身或其他的自定函数或过程。

function a(t:integer):integer;
begin
if t=10 then exit;
a:=a(t+1)+a(t);
end;
begin
writeln(a(0));
end.

回答3:

1.
加判断。。
Procedure Print(i:integer);
Begin
If i=101 then exit;
Write(1);
Print(i+1);
End;
主程序.....print(0);
2.
其实没啥错误。。
Procedure Print(i:integer);
Begin
If i=101 then exit;
Write(i);
Print(i+1);
End;