utorak, 1. siječnja 2013.

Pripreme za algoritme(22)

Rekurzije
U rekurzivnom postupku pozivamo funkciju s jednom vrijednošću. Unutar funkcije nalazi se poziv iste funkcije s promjenjenom vrijednošću. Bitno je unutar funkcije ugraditi trenutak kad se za određenu vrijednost funkcije ona prekida.
Primjer:
Pomoću rekurzivne funkcije treba izračunati sumu 1-2+3-4+5-6+... za N članova. Za N članova možemo primijetiti da se vrijednost sume može izračunati tako da se sumi N-1 članova doda (ili oduzme) N.
function suma(n:integer):integer;
begin
if N=1 then suma:=1
else begin
if odd(N) then suma:=suma(N-1)+N
else suma:=suma(N-1)-N;
end;
end;

Nakon prikaza rekurzije obraditi ćemo još par tipova pristupu zadataka, ali čeka Vas i baza zadataka.
Pozdrav! ;) 

Nema komentara:

Objavi komentar