program Rekurzivne_Funkcie;

var cislo:integer;

{Faktorial je cislo ktore je definovane ako sucin vsetkych
cislel od 1 po seba sameho...
5! = 5*4*3*2*1 (=120)}

function Faktorial(n:integer):longint;
begin

  if n = 1 then faktorial:=1
  else faktorial := n* faktorial(n-1);

end;


{Fibonacciho postupnost znie velmi sofistikovane, ale nie je
to nic ine ako v praxi casty postup, alebo rad cisel, v ktorych
je cislo suctom dvoch predzhadzajucich...
Vyzera to zhruba takto:
1 1 2 3 5 8 13 21...
}

function Fibonacci(n:longint):integer;
begin

  if n=1 then fibonacci:=1 else
  if n=2 then fibonacci:=1 else
  fibonacci:=fibonacci(n-1)+fibonacci(n-2);

end;


begin

 write('Napis cislo: ');
 readln(cislo);

 writeln('Faktorial z cisla ',cislo,' je ',faktorial(cislo));

 writeln(cislo,'-te fibonaciho cislo je rovne ',fibonacci(cislo));

 readln;


end.
