Zvyšování kvality výuky v přírodních a technických oblastech CZ.1.07/1.128/02.0055
Programování - Karel – rekurze (pracovní list) Označení: EU-Inovace-Lego-52 Předmět: Programování a LEGO Roboti Cílová skupina: 5-9. třída Autor: Petr Coufal Časová dotace: 1 vyučovací hodina Forma: jednotlivci Anotace: Seznámení a vysvětlení základů rekurze v jazyce Karel a její použití k ovládání robota Karla.
Cíl: seznámit žáky s pojmem rekurze a rekurzivní volání, naučit žáky tvořit rekurzivní volání, naučit žáky rozumět struktuře rekurze, pomoci žákům tvořit rekurzivní volání, zdokonalit ovládací dovednosti v programu xKarel
Pomůcky: psací potřeby, počítač a program xKarel, projektor a plátno
Postup: Prolog: Výukovým monologem žáky seznámíme s cíli a průběhem vyučování. Motivace: Názornou ukázkou práce v programu xKarel s využitím elementární povelů, podmíněného volání a rekurzivního volání převedeme jednoduchost a zjednodušení ovládání a tvorby rekurzivního volání pro ovládání robota Karla. Mobilizace předchozího poznatkového systému: Formou řízené diskuse se zaměříme na znalosti a dovednosti z předchozího programování podmíněného rozhodování a cyklů a z programování s řídící jednotkou NXT. Expozice nových poznatků: Popíšeme a předvedeme rekurzivní volání. Vysvětlíme jeho využívání, jeho tvorbu a jeho ukládání. Názorně předvedeme používání složitějších rekurzivních volání. Naučíme se tato volání využívat k ovládání robota Karla k činnostem v okně Místnost. Fixace nového učiva: Při názorné práci v programu postupně s žáky komentujeme, jednotlivé rekurzivní volání a jejich význam pro robota Karla. Následně tyto myšlenky ověříme spuštěním těchto příkazů. Procvičení: K upevnění získaných znalostí a dovedností slouží samostatná práce s pracovním listem.
Závěrečné zhodnocení: Sebereflexní hodnocení žáka probíhá formou dotazníku na konci pracovního listu. V závěru hodiny ve společném dialogu uvažujeme o naplnění cílů stanovených na začátku hodiny. Zhodnotíme vlastní práci. Závěrem sdělíme cíl a téma další hodiny – základní prvky programování – řešení jednoduchých úloh 1.
Pracovní list: EU-Inovace-Lego-52 Po splnění odškrtni.
Prostuduj si kapitolu Rekurzivní volání v prostředí nápovědy. Napiš, k čemu slouží rekurzivní volání.
Napiš, jaké jsou typy rekurzivního volání, a uveď vlastní příklady těchto volání.
Vytvoříme proceduru CIHLANASEVER, která vypadá takto:
procedure CIHLANASEVER { JeSever { JeZeď { VLEVOBOK VLEVOBOK} Jinak {KROK POLOŽ}} Jinak { VLEVOBOK CIHLANASEVER} } Tato procedura využívá přímé rekurzivní volání. Procedura CIHLANASEVER obsahuje podmínku JeSever, která určuje další vykonání příkazů. V případě splnění podmínky
následuje další podmínka JeZeď. Pokud je Karel před zdí, otočí se na jih. V opačném případě udělá Karel krok na sever a položí cihlu. V případě, že Karel na počátku není otočen na sever, vykoná se příkaz vlevobok, po kterém následuje rekurzivní volání procedury CIHLANASEVER. Po jejím zavolání se procedura vyhodnocuje podle podmínek. V pracovním listě č. 49 využíváme proceduru NAJIH, kterou v pracovním listě č. 51 upravujeme. Vezmi původní proceduru NAJIH a uprav ji tak, aby využívala rekurzivní volání a spouštěla se pouze jednou.
procedure NAJIH {
}
Hodnocení
Jak se ti dnes dařilo?
Jak hodnotíš vlastní aktivitu?
Jak hodnotíš dnešní téma?
Vybraného smajlíka hodnocení označ.
Použitá literatura:
[1]
DOSTÁL, Radim a Petr ABRAHAMCZIK. Nápověda programu xKarel. [online]. [cit.
2013-08-11]. Dostupné z: http://xkarel.sourceforge.net/cz/program.php
[2]
DOSTÁL, Radim a Petr ABRAHAMCZIK. Syntaxe jazyka KAREL programu
xKarel. [online]. [cit. 2013-08-11]. Dostupné z: http://xkarel.sourceforge.net/cz/syntax.php
[3]
MAŇÁK, Josef. Nárys didaktiky. 1. vyd. Brno: Masarykova univerzita, 1990, 111 s.
ISBN 80-210-0210-7.
[4]
MAŇÁK, Josef a Vlastimil ŠVEC. Výukové metody. Brno: Paido, 2003, 219 s. ISBN
80-731-5039-5.
[5]
OBST, Otto. Didaktika sekundárního vzdělávání. 1. vyd. Olomouc: Univerzita
Palackého v Olomouci, 2006, 111 s. ISBN 80-244-1360-4.
[6]
ZNAMENÁČEK, Jiří. Karel: Úvod do programování. [online]. [cit. 2013-08-11].
Dostupné z: http://vyuka.ookami.cz/materialy/karel/recursion.xml