Poznámky
Prezentácia
Prehľad
1
Rekurzia
  • Mgr. Zuzana Szabóová


  • UPJŠ v Košiciach, Prírodovedecká fakulta,
    Oddelenie didaktiky informatiky a podporných technológií
2
otázky
  •  je rekurzia potrebná v živote?
  •  aké sú rôzne typy rekurzie?
  •  je potrebné učiť rekurziu na stredných školách?
  •  je dostatok materiálu pre učiteľov a študentov k tejto téme?
3
obsah
  • čo je to rekurzia?
  • rekurzia okolo nás
  • typy rekurzie
    • priama
    • nepriama
  • funkcie
  • fraktály
  • jednoduché úlohy
  • rekurzia v učebniciach informatiky
  • rekurzia v školskej informatike
  • informačné zdroje
  • kontakt
4
Čo je rekurzia
  • hovoríme, že objekt je rekurzívny, ak sa čiastočne skladá, alebo je definovaný pomocou seba samého.


  • rekurentne (rekurzívne) sú definované prirodzené čísla, stromové štruktúry a niektoré funkcie.
  • napríklad: 1 je prirodzené číslo a nasledovníkom prirodzeného čísla je prirodzene číslo.
5
rekurzia okolo nás
  • rekurzívne objekty sa nachádzajú okolo nás (niekedy si to ani neuvedomujeme)
6
typy rekurzie
  • priama


  • nepriama
  • kombinované typy


7
priama rekurzia
  • Rekurzívny program je definovaný prostredníctvom seba. To znamená, že v tele procedúry obsahuje volanie samého seba.
  • Schéma priamej rekurzie:
  • procedúra A
    začiatok 
    ak podmienka ukončenia, tak ukonči
    inak 
    začiatok
      príkazy  
        procedúra A   
      príkazy 
    koniec
    koniec
8
nepriama rekurzia
  • ak procedúra A v tele obsahuje volanie na inú procedúru B a tá v sebe obsahuje volanie na procedúru A, potom takéto volanie nazývame nepriama rekurzia.
  • nepriama rekurzia môže byť definovaná aj pomocou viacerých procedúr (nie len pomocou dvoch).
  • napríklad procedúra A1 volá procedúru A2, tá zase A3, takto to pokračuje, až An-1 procedúra volá An-tu procedúru a tá zase volá A1 (kde n je prirodzene číslo väčšie ako 2).
  •  
    A1 → A2 → A1
    alebo
    A1→A2 → A3 → A4 → . . . → An → A1
9
rekurzívne funkcie
  • funkcia je programová metóda, ktorá po skončení svojho vykonávania vráti požadovaný výsledok
  • funkcie, v ktorých sa rekurzívne volanie vyskytuje viackrát, sa veľmi často používajú najmä pri výpočte rekurentných funkcií, napríklad ako výpočet determinantu, Gama a Beta funkcie (v štatistike)
10
fraktály
  • fraktál je akýkoľvek geometricky útvar, z ktorého po rozdelení vznikne v ideálnom prípade niekoľko kópii pôvodného celku
  • útvary sú samo podobné a nezávislé na meracom prístroji
  • často majú ešte ďalšie zaujímavé vlastnosti, napr. nekonečný obvod, či nekonečne malý obsah
11
 
12
jednoduché úlohy
  • Napíšte rekurzívnu procedúru, ktorá nakresli binárny strom tak, aby sa vetvy stromu skracovali na polovicu vo vyšších úrovniach. Parameter bude dĺžka najdlhšej strany a stupeň.
13
jednoduché úlohy
  • napíšte rekurzívnu procedúru, pomocou ktorej sa vykreslí daný obrázok podľa predlohy do zvoleného stupňa
14
jednoduché úlohy
  • Upravte procedúru štvorec tak, aby sa vykreslil zadaný obrázok podľa predlohy do zvoleného stupňa.
15
jednoduché úlohy
  • Napíšte rekurzívnu procedúru, pomocou ktorej sa vykreslí "star fraktál" podľa predlohy do zvoleného stupňa.
16
jednoduché úlohy
  • Napíšte rekurzívnu procedúru, pomocou ktorej sa vykreslí "Kochova antivločka" podľa predlohy do zvoleného stupňa.
17
prehľad stavu rekurzie v učebniciach
  • S odporúčaných učebníc a tematických zošitov pre stredné a základné školy na Slovensku je pojem rekurzia a rekurzívne úlohy spomenuté v nasledujúcich knihách:
  • Informatika pre stredné školy, učebnica, Kalaš a kolektív, Slovenské pedagogické nakladateľstvo, druhé vydanie, 2002

  • V tejto knihe je spomenutý príklad na nekonečnú rekurziu.


  • Tematický zošit Algoritmy s Logom, Varga, Blahova, Zimanová, Slovenské pedagogické nakladateľstvo, prvé vydanie 1999

  • V tejto knihe sú príklady na nekonečnú rekurziu, chvostovú rekurziu a rekurzívne funkcie typu: C - krivka, Kochova vločka, binárny strom a špirála.
18
prehľad stavu rekurzie na školách
  • rekurzia, ako téma programovania, nie je uvedená ako povinná v osnovách pre stredné školy a gymnázia
  • vyučujúci nie sú povinní ju učiť
  • táto téma bola zaradená medzi otázky v MONITORE v posledných troch rokoch
    okrem monitora vyšli aj Štandardy, požiadavky na maturitu, v nich je rekurzia uvedená pre maturitu A.
19
Informačné zdroje
  • Kalaš, I. a kolektív: Informatika pre stredné školy, učebnica, Slovenské pedagogické nakladateľstvo, druhé vydanie, 2002
  • Varga, M. – Blaho, A. – Zimanová, R.: Tematický zošit Algoritmy s Logom, Slovenské pedagogické nakladateľstvo, prvé vydanie, Bratislava 1999
  • Wirth, N.: Algoritmy a štruktúry údajov, Alfa – vydavateľstvo technickej a ekonomickej literatúry, Bratislava, 1989
  • Šnajder, Ľ. Pochopenie rekurzie pomocou programovacieho jazyka KAREL, MIF č. 21, MPC Prešov a CCV PF UPJŠ v Košiciach, 2003, str. 46-49, ISSN 1335-7794
  • Szabóová, Z.: Zbierka úloh z programovania -Rekurzia (práca ŠVOČ), Košice 2005
  • Szabóová, Z.: Diplomová práca, Metodika výučby programovania–vizualizácia rekurzívnych algoritmov, Košice 2006, dostupné na Internete <http://di.ics.upjs.sk/prace/2006/szaboova/>
20
kontakt
  • Mgr. Zuzana Szabóová


  • Univerzita P. J. Šafárika v Košiciach
    Prírodovedecká fakulta
    Oddelenie didaktiky informatiky a podporných technológií
    Jesenná 5, 041 54 Košice


  • zuzana.szaboova@upjs.sk
21
ďakujeme
za
pozornosť