Větvení a cykly
Žáci programují větvení se složenými podmínkami a cykly for i while, vnořují bloky a řídí tok výpočtu. Rozšiřují řízení výpočtu ze ZŠ o složené podmínky a přehlednou strukturu.
Průvodce tématem Větvení a cykly v předmětu Informatika pro II. ročník: co mají žáci zvládnout, na co navázat a kde nejčastěji chybují. K tomu příprava na hodinu, pracovní list nebo písemka, které ScioBot připraví na jedno kliknutí přesně pro tento ročník.
Připravit hodinu Všechny formáty
Klikněte a tvořte
Získejte přípravu zdarma
Vyberte formát. Jedním kliknutím otevřete tvorbu na téma Větvení a cykly (II. ročník) — ScioBot ho připraví za vás.
Další formáty na jedno kliknutí
- Vytvořit: Pracovní list
- Vytvořit: Písemka
- Vytvořit: Aktivita
- Vytvořit: Prezentace
- Vytvořit: Kartičky
- Vytvořit: QR hra
Téma i ročník jsou už vyplněné. Nic nepíšete — rovnou tvoříte.
Větvení a cykly jsou základní nástroje řízení toku výpočtu: program se podle podmínky rozhodne, kterou větev spustit, nebo opakuje blok, dokud platí zadané pravidlo. Na gymnáziu žáci navazují na jednoduché podmínky ze základní školy a pracují se složenými podmínkami (and, or, not), vnořenými bloky a s cykly for i while v konkrétním programovacím jazyce, typicky v Pythonu.
Přehledný zápis (odsazení, pojmenované proměnné, srozumitelné podmínky) není kosmetika, ale součást správnosti: špatně vnořený blok nebo záměna = a == změní význam programu. Výstup G-INF-02-004 a G-INF-02-007 vyžaduje, aby žák dokázal problém převést na opakování a větvení se složenými podmínkami a výsledek ověřit na více vstupech.
Cílem jednotky je, aby žák uměl zvolit vhodný typ cyklu, ukončit ho správnou podmínkou a vnořit větvení do cyklu (a naopak) bez „rozbití“ struktury. Současně si osvojuje odpovědnost za důsledky běhu: nekonečný cyklus, přeskočená větev nebo špatně spojené podmínky vedou k chybnému nebo nebezpečnému chování programu.
Předpoklady
- Zápis algoritmu, vlastnosti a rozklad úlohy na kroky
- Proměnné, výrazy, porovnání a základní datové typy v Pythonu
- Jednoduché podmínky a opakování ze základní školy (if, počítaný cyklus)
Klíčové pojmy
- Podmínka a větvení
- Výraz s pravdivostní hodnotou rozhodne, který blok se provede; větev else/elif pokrývá zbývající případy, aby nezůstaly neošetřené vstupy.
- Složená podmínka
- Spojení dílčích testů operátory and, or a not; závorky a pořadí vyhodnocení určují, kdy je celá podmínka pravdivá.
- Cyklus for
- Opakování přes známou posloupnost (rozsah čísel, znaky, prvky); počet průchodů plyne z iterovaného objektu, ne z ručního přičítání indexu.
- Cyklus while
- Opakování, dokud platí podmínka; vhodný, když předem neznáme počet opakování, ale musí existovat změna stavu, která cyklus ukončí.
- Vnoření bloků
- Větvení uvnitř cyklu nebo cyklus uvnitř větve; platnost příkazů určuje odsazení (blok), ne pořadí řádků na obrazovce.
- Řízení toku a ukončení
- Počáteční hodnoty, aktualizace proměnných v těle a podmínka pokračování musí dohromady zaručit konečný a správný počet průchodů.
- Porovnání a přiřazení
- == porovnává hodnoty, = přiřazuje; záměna v podmínce buď skončí syntaktickou chybou, nebo tiše změní stav proměnné.
Časté miskoncepce
Častá chyba
Žák napíše if x = 5: a čeká porovnání s pětkou; v Pythonu to buď spadne, nebo (v jiném jazyce) přepíše x.
Jak na to
Na tabuli vedle sebe: přiřazení x = 5 a test x == 5; žáci v editoru opraví tři krátké podmínky a hlasitě řeknou, co která dělá.
Častá chyba
Žák spojuje dvě porovnání jako 0 < x < 10 stylem x > 0 and < 10 nebo or tam, kde má být and (např. „věk mezi 15 a 18“ jako vek > 15 or vek < 18).
Jak na to
Tabulka pravdivosti na třech číslech (14, 16, 19): žáci doplní and/or a hned spustí stejné vstupy v kódu.
Častá chyba
While cyklus „počítá do n“, ale žák zapomene i = i + 1 (nebo aktualizaci) v těle — program visí.
Jak na to
Společně vypíšou trojici: start, podmínka, změna; u visícího kódu nejdřív hledají chybějící změnu, až potom restartují běh.
Častá chyba
Podmínka v cyklu je odsazená stejně jako print v těle, takže se vyhodnotí jen jednou, nebo naopak tělo „uteče“ z cyklu.
Jak na to
Žáci nakreslí rámečky bloků podle odsazení a teprve pak spustí; učitel ukáže tutéž úlohu se špatným a správným odsazením.
Jak učit
2–3 hodiny
- Evokace: žáci slovně popíší rozhodování (vstupenka podle věku a dne) a opakování (hledání hesla, součet čísel do nuly) a přiřadí to k if / for / while.
- Jádro: společně sestaví program se složenou podmínkou a vnořeným cyklem; žáci doplní elif a zvolí for nebo while podle toho, zda znají počet opakování.
- Reflexe: u vlastního kódu žáci označí podmínku ukončení, vnořené bloky a jeden vstup, na kterém by dřív program selhal.
Nápady na aktivity
- Úloha „ceník a sleva“: vstup věk, den, počet kusů; složené podmínky určí cenu, cyklus zpracuje více zákazníků zadaných uživatelem.
- Ladění hotového, ale chybného skriptu (záměna ==/= , or místo and, chybějící inkrement, špatné odsazení) v párech s povinným výpisem opravy.
Hodnocení
Žák napíše přehledný program, který kombinuje složenou podmínku a cyklus (for nebo while) a ověří ho alespoň třemi vstupy včetně hraničního.
Ústně zdůvodní volbu for vs. while a ukáže, která změna stavu brání nekonečnému opakování (G-INF-02-004, G-INF-02-007).
Související témata
- Proměnné a výrazy v Pythonu
- Algoritmus: vlastnosti, zápis a rozklad
- Seznamy v Pythonu
- Funkce a podprogramy
- Testování a ladění
- Nároky algoritmu
Zdroje
Co pro vás ScioBot připraví k tématu Větvení a cykly
Interaktivní aktivity, které žáci spustí na tabletu či tabuli, tisknutelné kartičky a hry pro celou třídu – každý formát na téma Větvení a cykly jedním klikem.
Základní materiály
-
Příprava na hodinu
Kompletní příprava s cíli, průběhem a aktivitami.
-
Pracovní list
List s úlohami, klíčem a variantou.
-
Písemka
Časovaná písemka s body a variantami.
-
Aktivita
Aktivita do hodiny, kterou žáci hned spustí.
-
Prezentace
Sada slajdů k výkladu a procvičení.
-
Kartičky
Materiál k tisku (kartičky, plakát, pracovní list).
-
QR hra
Interaktivní hra k procvičení tématu.
Interaktivní aktivity 14
-
Křížovka s tajenkou
Legendová křížovka, kde se ve sloupci skrývá tajenka. Skvělá na opakování pojmů.
10–20 min
-
Kartičky
Sada oboustranných kartiček na učení pojmů a definic. Žáci si je procvičí překlápěním.
5–20 min
-
Pexeso a spojovačka
Dvojice kartiček s obrázky, pojmy nebo příklady. Spojovačka, pexeso i volné třídění – ideální na slovní zásobu i opakování.
10–25 min
-
Rozhodovačka
Rychlé rozhodování mezi možnostmi s okamžitou zpětnou vazbou.
5–12 min
-
Otázky
Sada otázek s výběrem odpovědí; jedna nebo více správných. Okamžitá sebekontrola.
5–15 min
-
Vpisování
Žáci dopisují krátké odpovědi a ihned vidí, zda se trefili.
5–15 min
-
Rozřazovačka
Žáci přetahují kartičky do správných kategorií.
5–15 min
-
Rozbory
Žák přiřazuje značky k částem věty nebo výrazu — větné členy, slovní druhy, větné rozbory. Sebevyhodnocovací procvičování.
10–20 min
-
Označování
Žáci označují správná slova přímo v textu.
5–15 min
-
Doplňování textu
Žáci doplňují chybějící slova přímo do vět nebo krátkého textu.
5–15 min
-
Krok po kroku
Žáci řadí kroky procesu do správného pořadí.
5–15 min
-
Popis obrázku
Diagram s očíslovanými špendlíky. Žáci přiřazují popisky k částem obrázku — biologie, zeměpis, anatomie.
5–15 min
-
Přesouvání
Žáci přetahují kartičky do přesně určených slotů.
5–15 min
-
Čtení s porozuměním
Žáci čtou krátký text a odpovídají na otázky k jeho obsahu.
10–25 min
K tisku a rozstříhání 8
-
Páry
Kartičky se dvěma polovinami, které k sobě patří (např. datum–událost). Žáci je vystřihnou a párovají.
10–20 min
-
Výběr z možností (s tajenkou)
Kartičky s úlohami a třemi možnostmi. Písmena u správných odpovědí složí tajenku — žák si tak řešení zkontroluje sám.
10–20 min
-
Doplňování do vět
Věty s výběrem ze dvou možností uvnitř — žák zakroužkuje správnou.
10–20 min
-
Hra Riskuj
Kvízová hra se třemi podtématy a otázkami různé hodnoty — klasický formát Riskuj / Jeopardy.
15–30 min
-
Hra AZ kvíz
28 otázek na hexagonální hrací pole — cílem je spojit všechny tři strany.
15–35 min
-
Označ správnou možnost
Kartičky s otázkou a čtyřmi možnostmi — žák označí správnou (např. kolíčkem).
10–20 min
-
Já mám, kdo má …?
Kartičky s tvrzením a otázkou — žáci je čtou v kruhu a hledají navazující odpověď.
10–25 min
-
Hádej, kdo jsem
Kartičky s popisem osobnosti, věci nebo zvířete v 1. osobě — žáci tipují, o koho/co jde.
10–25 min
Hry pro celou třídu 4
-
AZ kvíz
28 otázek na hexagonálním hracím poli — cílem je spojit všechny tři strany. Včetně náhradních ANO/NE otázek.
15–35 min
-
Riskuj
Klasická hra se 5 kategoriemi a otázkami za 100–500 bodů — týmy soutěží o nejvyšší skóre.
15–40 min
-
Pexeso
Klasické pexeso s 10 dvojicemi (pojem ↔ popis) — dva týmy se střídají a hledají shody.
10–25 min
-
Šarády
Šarády se 12 úkoly (mluvení, kreslení, pantomima) — dva týmy hádají, kdo uhodne první, dostane bod.
15–30 min
Očekávané výstupy
- G-INF-02-004 žák vytvoří přehledný program pro vyřešení konkrétního problému s ohledem na jeho možné důsledky a svou odpovědnost za ně; používá opakování, větvení programu se složenými podmínkami, proměnné, seznamy, podprogramy s parametry a návratovými hodnotami; ve snaze o vyšší efektivitu navrhuje, řídí a hodnotí souběh procesů
- G-INF-02-007 programovací koncepty – programovací jazyk; proměnné, datové typy a jejich vlastnosti, vstup a výstup dat; podprogramy s parametry a s návratovými hodnotami; větvení programu se složenými podmínkami, cykly, seznamy
Učíte Větvení a cykly trochu jinak?
Popište ScioBotu vlastními slovy, co s žáky chcete zvládnout a kolik máte času. Materiál přizpůsobí vašemu ŠVP, třídě i žákům se speciálními vzdělávacími potřebami.
Související témata
-
Algoritmus: vlastnosti, zápis a rozklad
Žáci vysvětlí vlastnosti algoritmu, zapíší ho slovně, diagramem i pseudokódem, rozdělí problém na části a zdůvodní, co řešit algoritmicky. Neopakují blokové programování ze ZŠ.
-
Binární kódování
Žáci zapíší čísla ve dvojkové soustavě, vysvětlí bit, bajt a množství informace podle vyloučených možností a zdůvodní volbu datového typu mimo programovací jazyk.
-
Umělá inteligence
Žáci vysvětlí princip strojového učení, uvedou aplikace umělé inteligence a posoudí její limity, přínosy a rizika při práci s informacemi i ve společnosti.
-
Data a informace
Žáci rozliší data od informace, navrhnou sběr a evidenci údajů, posoudí jejich úplnost a význam pro rozhodnutí a oddělí evidenci od návrhu informačního systému.
-
Proměnné a výrazy v Pythonu
Žáci v Pythonu deklarují proměnné, volí datové typy a sestavují číselné i logické výrazy včetně vstupu a výstupu. Nejde o první seznámení s proměnnými ze ZŠ, ale o přehledný zápis výrazů v programu.
-
Tabulky, klíče a procesy
Žáci navrhnou tabulky s atributy, primárním a cizím klíčem, propojí je relacemi a sladí procesy od sběru po výstup s rolemi, které data mění nebo jen čtou.
-
Počítačové sítě a internet
Žáci porovnají způsoby propojení počítačů, charakterizují lokální sítě a internet, vysvětlí paketový přenos, web, cloud, bezdrátové sítě a internet věcí.
-
Od problému k modelu a simulaci
Žáci formulují problém a požadavky na řešení, posoudí dostatek informací a sestaví model nebo jednoduchou simulaci, ze které odvodí předpověď.