>> SPEAKER 1: Tﾃ､ssﾃ､ uusimmassa versiossa on sigma, olen toteuttanut kutsuisin
iteratiivinen ratkaisu, jossa kﾃ､ytin eteenpﾃ､in silmukan laskea kaikki ylﾃｶs
numeroita vﾃ､lillﾃ､ 1 ja m, sen jﾃ､lkeen palaavat summa.
>> Mutta nﾃ､yttﾃ､ﾃ､ siltﾃ､, 窶銀久oimme kﾃ､yttﾃ､ﾃ､ toista tekniikka toteuttaa saman
toiminto, tekniikka kutsutaan rekursio.
Rekursiivinen funktio, niin sanotusti, on vain yksi, joka kutsuu itseﾃ､ﾃ､n.
Nyt, ja sinﾃ､nsﾃ､, ettﾃ､ saattaa olla ongelma.
Jos toiminto yksinkertaisesti kutsuu itseﾃ､ﾃ､n joka kutsuu itseﾃ､ﾃ､n joka kutsuu itseﾃ､ﾃ､n,
ettﾃ､ prosessi voi bot koskaan loppua.
Mutta niin kauan kuin meillﾃ､ kuuluu ns base tapauksessa ehto, joka takaa
ettﾃ､ joissakin tilanteissa emme kutsu itsellemme, ettﾃ､ prosessi muuten
ﾃ､ﾃ､retﾃｶn looping olisi lopetettava.
>> Katsotaanpa nyt reimplement sigma seuraavasti.
Jos n on pienempi kuin tai yhtﾃ､ suuri kuin 0, olen yksinkertaisesti, ja hieman mielivaltaisesti,
palaavansa 0.
Muuten mitﾃ､ aion tehdﾃ､, on todella laskea sigma positiivisen int
ettﾃ､ olen kulkenut.
>> Nyt, mitﾃ､ on sigma m?
No, sigma ja m on, tietenkin, summa 1 lﾃ､pi metriﾃ､.
Mutta jos ajattelemme sitﾃ､ muulla tavalla, se on yksinkertaisesti summa m + m
miinus 1 plus m miinus 2 ja niin edelleen, kaikki alas 1.
Joten siinﾃ､ mielessﾃ､, nﾃ､yttﾃ､ﾃ､ siltﾃ､, 窶銀菊ttﾃ､ Voisin yksinkertaisesti palata m +.
>> Ja sitten minﾃ､ tarvitsen m miinus 1 plus m miinus 2.
Mutta minulla on toiminto, joka voi antaa Itselleni tuo vastaus, eli
sigma m miinus 1.
>> Nyt, kutsuen itseﾃ､ni tﾃ､llﾃ､ tavalla ei tuntua paras idea.
Koska jos sigma kehottaa sigma jossa kehotetaan sigma jossa vaaditaan sigma, voit
Luulisi, ettﾃ､ tﾃ､mﾃ､ prosessi ehkﾃ､ koskaan pﾃ､ﾃ､ty.
Mutta siksi meillﾃ､ oli ns base tapauksessa ylﾃ､osassa tﾃ､tﾃ､ toimintoa.
Jos ehto, joka tarkistaa, jos m on pienempi tai yhtﾃ､ suuri kuin 0 En aio
kutsua itseﾃ､ni.
Olen sen sijaan aio palata 0, joka vuorostaan 窶銀蟻iotaan lisﾃ､tﾃ､
edellinen numeroita, ettﾃ､ olen ollut yhteenlaskua up, nﾃ､in pysﾃ､ytetﾃ､ﾃ､n tﾃ､mﾃ､
muuten ﾃ､ﾃ､retﾃｶn prosessi.
>> Katsotaanpa nyt nﾃ､hdﾃ､, jos tﾃ､mﾃ､ uusi tﾃ､ytﾃ､ntﾃｶﾃｶnpanoa toimii.
Sﾃ､ﾃ､stetﾃ､ﾃ､n, koota ja suorita tﾃ､mﾃ､ ohjelma.
Tee sigma 1 dot slash sigma 1.
Ja katsotaanpa antaa sille samat numerot kuin ennen.
2, joka toivottavasti antaa minulle 3.
Katsotaanpa toimitettava sille 3, joka toivottavasti antaa minulle 6.
Ja nyt vihdoin antaa sille 50, joka todellakin antaa minulle 1275.