//sourceiran.com function fib(n: integer): integer; var tmp: integer; begin if n=0 then result := 1 else if n=1 then result := 1 else begin tmp := fib(n-1); result := tmp + fib(n-2); end; end; Function Fib2(n:integer):integer; var i, f1, f2:integer; begin f1:=1; f2:=1; Result:=1; for i:=2 to n do begin Result:=f1+f2; f1:=f2; f2:=result; end; end; var i: integer; s1, s2: string; begin s1 := ''; s2 := ''; for i:=1 to 20 do begin s1 := s1 + ' ' + intToStr(fib(i)); s2 := s2 + ' ' + intToStr(fib2(i)); end; writeln(s1); writeln(s2); end.