Algoritmické myšlení
MTLAlgoritmické myšlení je součást obecnějšího informatického myšlení, která se zaměřuje na navrhování algoritmů.
Co zahrnuje algoritmické myšlení?
Algoritmus je přesně daný postup, kterým řešíme určitý problém. Algoritmické myšlení se typicky využívá při programování, tj. při zápisu algoritmů, které provádí počítač. Má však svoje využití i v běžném životě: typickými příklady jednoduchých algoritmů jsou recepty na vaření nebo instrukce k sledování cesty z jednoho místa na druhé.
Algoritmické myšlení zahrnuje nejen tvorbu algoritmu, ale i další související kroky:
- Porozumění problému, jasná formulace problému.
- Abstrakce, rozklad problému na podčásti, odlišení podstatných prvků od těch, které jsou méně důležité.
- Zvážení různých přístupů k řešení problému, porovnání efektivity algoritmů, optimalizace postupů.
- Porozumění algoritmu, který vymyslel někdo jiný, a jeho provedení.
- Hledání a opravování chyb.
Algoritmické myšlení na Umíme informatiku
V rámci Umíme informatiku dělíme toto téma na několik podtémat:
- Rozpoznávání vzorů – vyhledávání společných vzorů a vlastností, vzory v posloupnostech, popis vzorů
- Posloupnosti příkazů – skládání algoritmů z více příkazů
- Cykly a podmínky – opakované a podmíněné vykonávání příkazů
- Proměnné – práce se stavovou informací, ukládání hodnot do proměnných
- Funkce a zobecňování – zobecňování (abstrakce) vzorů, rozklad (dekompozice) problémů na části, použití funkcí
- Vývoj programů – ladění, hledání chyb
Příklady v této části staví především na „mikrosvětech“, což jsou jednoduchá, intuitivní prostředí s omezeným množstvím příkazů a současně zajímavou dynamikou. Jsou začleněny jak variace na často používané principy (želví grafika, robot na mřížce), tak originální variace jako kouzla nebo deaktivace bomby.
Pro zápis programů zde využíváme blokové programování, k jehož použití nabízíme samostatný metodický text pro učitele.
Rozhodovačka
Rychlé procvičování výběrem ze dvou možností.
Přesouvání
Přesouvání kartiček na správné místo. Jednoduché ovládání, zajímavé a neotřelé úlohy.
Označování
V zadaném obrázku či textu máte za úkol označit všechny oblasti, které splňují určitou vlastnost.
Pexeso
Hledání dvojic, které k sobě patří.
Krok po kroku
Doplňování jednotlivých kroků v rozsáhlejším postupu.
Doplňování textu
Krátké texty, do kterých doplňujete na vybraná místa správnou variantu ze dvou možností.
Psaná odpověď
Cvičení, ve kterém píšete odpověď na klávesnici.
Šipkovaná
Navigujte skřítka do domečku. Logická úloha, která funguje jako rozcvička na programování.
Skřítkova rozcvička
Sběr hříbků
Skoky
Víc skřítků
Pozor na skřeta!
Přebarvování
Kameny a hůlka
Vybuchující muchomůrka
Rotující šipky
Mizející šipky
Lesní výpravy I
Teleport
Lesní výpravy II
Lesní výpravy III
Obtížné
Želví grafika
Vykreslování obrázků želví grafikou za využití blokového programování.
Základy
Obrázky s opakováním
Kreslení
Kreslení II
Vzory s opakováním
Želva s limitem
Vzory s opakováním II
Proměnné
Proměnné II
Ladění obrázků
Úprava programů
Správné úhly
Želva s limitem II
Záludné
Želví experimentárium
ProgMalování
Tvorba obrázků skládáním základním tvarů (např. kruh, čtverec), využití blokového programování.
Skládání tvarů
Skládání tvarů II
Malovací rozcvička
Obrázky
Obrázky II
Vzory s opakováním I
Vzory s opakováním II
Proměnné
Funkce
Ladění obrázků
Záludné
Plošinovka
Ovládejte skákající postavu pomocí blokového programování.
Čarování
Duch
Rozcvička
Interakce
Interakce a střílení
Interakce a čarování
Podmínky: základy
Pavouci a střely
Rozšířené podmínky
Interakce a podmínky
Duch a podmínky
Čarování s podmínkami
Kombinace podmínek
Čítače
Záludné
Stavitel
Pomocí blokového programování vytvořte program pro stavitele Standu.
Základy stavitelství
Stavby s plánováním
Stavby s opakováním
Stavby s opakováním: těžší
Opakuj dokud
Opakuj dokud: těžší
Opakování a podmínky
Opakování a podmínky: těžší
Vnořené cykly
Funkce bez parametrů
Rekurze
Ladění programů
Záludné
Kód kostky
Navigujte kostku po plánu podle zadaného programu. Procvičení schopnosti číst programy.
Rozcvička kostek
Opakuj N×
Procházky s rozhodováním I
Procházky s rozhodováním II
Opakuj dokud
Opakované rozhodování I
Opakované rozhodování II
Dvojité opakování
Výpravy kostek
Funkce kostky
Funkce s parametry
Robotanik
Jednoduché grafické ovládání, zapeklité programátorské úlohy.
Trénink
Lehké
Středně těžké
Těžké
Opravdová výzva
Python želva
Tvorba programů v Pythonu, kreslení obrázků želví grafikou.