program rekurencja;
uses crt;
{w tym programie pokaze ci jak sie uzywa rekurencji... zaczniemy od
prostego przykladu... wyswietlenie liczb od 5 do 1... no to do dziela}
Procedure rekursja(i:integer);
BEGIN
writeln(i);
i:=i-1;
if (i>=1) then rekursja(i); {w tej oto linijce jest wlasnie zrealizowana
rekurencja... jak widac... najpierw z prog
glownego przekazywana jest piatka do pro
cedury.. nastepnie w procedurze tej jest
wyswietlana.. pozniej odejmujemy od niej
jeden i sprawdzamy warunek czy przypadkiem
niejest mniejsza rowna 1. To jest nasz
warunek wyjscia z rekurencji...
Jezeli warunek sie spelnia to procedura
rekursja jest wywolana ponownie... z tym
ze juz zamiast 5 wrzucoana jest do niej 4...
i tak w kolko :) mam nadzieje ze juz jest
jasniejszy mechanizm rekurencji :)}
END;
var i:integer;
BEGIN
clrscr;
i:=5;
rekursja(i);
readln;
END.
{program ten mozna by bylo zapisac tez inaczej... za pomoca iteracji (petli)
Program iteracja;
uses crt;
var i:integer;
BEGIN
for i:=5 downto 1 do
Wrtieln(i);
readln;
END.
spelnialby on taka sama f-cjie