Podrobneje poglejmo kaj se dogaja, ko se izvaja prej napisana rekurzivna funkcija.
Za primer vzemimo, da naj funkcija sešteje vsa števila na intervalu [1,4].
To pomeni, da je na začetku vrednost parametra a = 1
, vrednost parametra b = 4
.
Ko zaženemo funkcijo:
Ker je vrednost parametra b večja od vrednosti parametra a, je izpolnjen prvi pogoj, v katerem se nahaja rekurzivni klic iste funkcije s parametroma a=1
in b-1=3
. Zato se funkcija še enkrat izvede z novimi parametri:
Izvede se rekurzivni klic funkcije vsotaŠtevil(1,2)
:
Nato pa se izvede rekurzivni klic funkcije s parametroma a = 1
in b = 1
.
Tokrat je zadoščeno drugemu pogoju, ki nam kot rezltat vrne kar vrednost parametra a
, ki je v našem primeru enak 1. Prišli smo do ustavitvenega pogoja in klici rekurzije v globino se končajo.