14 lines
335 B
ObjectPascal
14 lines
335 B
ObjectPascal
function Fib(n: integer): integer;
|
|
begin
|
|
if n <= 0 then
|
|
raise new System.ArgumentOutOfRangeException('Must be > 0','n');
|
|
var fibHelper: (integer,integer,integer) -> integer;
|
|
fibHelper := (n,a,b) -> n = 1 ? a : fibHelper(n-1, b, a + b);
|
|
Result := fibHelper(n,1,1);
|
|
end;
|
|
|
|
begin
|
|
for var i:=1 to 10 do
|
|
Fib(i).Print;
|
|
end.
|