Funkce a zobecňování – 3. třída
MXGFunkce jsou základním stavebním blokem, pomocí kterého vytváříme programy. Představují konkrétní realizaci obecného principu rozklad na části.
Zjednodušeně řečeno, funkce je kouzlo, kterému něco předložíme (vstup) a ono nám vykouzlí něco jiného (výstup).
- Pohádkový příklad: Zvětšovací kouzelná hůlka, kterou poťukáme zeleninu a ona ji zvětší na dvakrát větší velikost.
- Matematický příklad: Funkce odmocnina, která dáme na vstup číslo a ona nám vrátí jiné číslo (např. pro vstup 25, vrátí výsledek 5).
- Programátorský příklad: Funkce
polygon(n, délka), které dáme na vstup dvě čísla (počet stran a délku strany) a ona vykreslí obrázek mnohoúhelníku.
Jednoduché funkce bez parametrů umožňují pouze opakované vykonání přesně téhož kódu (např. vždy stejně velký čtverec). Funkce však mohou obsahovat i parametry, které ovlivňují jejich chování (např. velikost čtverce). Funkce mohou volat jiné funkce a někdy dokonce samy sebe – takovým funkcím se říká rekurzivní.
Při zavádění funkcí potřebujeme umět abstrahovat – tedy odhlédnout od nepodstatných detailů – a následně kód zobecnit – tedy nahradit proměnlivé detaily proměnnými, z nichž pak uděláme parametry funkce. Složitý program, zejména takový, ve kterém se opakuje podobný kód, lze rozložit do několika funkcí, a tím ho zjednodušit a zpřehlednit.


