>> SPEAKER 1: V zadnji različici sigma, sem izvajal, kaj bi rekel
ponavljajoč rešitev, pri čemer sem uporabil naprej zanka za štetje do vseh
številke med 1 in m, nato vrnitvijo vsoto.
>> Ampak se je izkazalo, da lahko uporabite drugo Tehnika za izvajanje istega
funkcijo, tehnika znan kot rekurzijska.
Rekurzivna funkcija, če se tako izrazim, je preprosto tista, ki sebe imenuje.
Zdaj, samo po sebi, da lahko problem.
Če funkcija zgolj sebe imenuje, ki se zahteva, ki sebe imenuje,
Ta proces bi lahko bot kdaj konec.
Toda tako dolgo, kot smo vključujejo tako imenovane osnovna, pod pogojem, da zagotavlja
da se v nekaterih primerih ne zahtevajo sami, da proces drugače
neskončna zanka bi bilo treba ukiniti.
>> Pojdimo zdaj reimplement sigma kot sledi.
Če je n manjša ali enaka 0, sem preprosto in nekoliko arbitrarno,
dogaja, da se vrnete 0.
Else kaj bom storiti, je dejansko izračunati sigma za pozitivni int
da sem bil izročil.
>> Zdaj, kaj je sigma od m?
No, sigma m je seveda vsota 1 skozi m.
Ampak, če pomislim na drug način, to je preprosto vsota m plus m
minus 1 plus m minus 2 in tako naprej, vse tja do 1.
Torej, v tem smislu se zdi, da Lahko bi preprosto vrniti m plus.
>> In potem rabim m minus 1 plus minus m 2.
Ampak jaz imam funkcijo, ki lahko dajo me prav ta odgovor, in sicer
sigma iz m minus 1.
>> Zdaj, sam kliče na ta način ne Zdi se, kot najboljši ideji.
Ker če sigma poziva sigma, ki zahteva sigma ki poziva sigma, si
bi si mislil, da bo ta proces morda ne bo nikoli konec.
Ampak to je, zakaj smo imeli tako imenovano bazo Zadeva na vrhu te funkcije.
Če je pogoj, da preveri, če je m manjša ali enaka 0 ne bom
da sem poklical.
Jaz sem namesto vrača 0, ki pa se dogaja, da se doda
prejšnje številke, da sem bil seštevanjem navzgor, s čimer se zaustavi to
drugače neskončen proces.
>> Poglejmo, če je ta nova izvajanje dela.
Rešimo, pripravijo in zagon tega programa.
Naredite sigma 1 pika poševnica sigma 1.
In naj ji zagotovi iste številke kot prej.
2, ki naj bi upajmo, da mi je dal 3.
Dajmo ji priskrbijo 3, ki bi mi morala dati upajmo 6.
In kaj je to končno zagotovi 50, kar mi res daje 1275.