Kapitola 4 - Cykly a opakování
Motivace
Mnoho programů dělá podobnou činnost opakovaně: bliká, měří hodnotu, čeká na reakci nebo opakuje hru. Cykly šetří práci, ale mohou způsobit i chyby, třeba nekonečné opakování.
Co se naučíš
- rozpoznat opakující se část postupu,
- použít cyklus s pevným počtem opakování,
- použít cyklus opakovaný po dobu splnění podmínky,
- vysvětlit riziko nekonečného opakování,
- rozhodnout, co se má stát před cyklem, uvnitř cyklu a po cyklu.
Náčrt obsahu
| Typ opakování | Kdy se hodí |
|---|---|
| Opakuj n-krát | Když víme přesný počet opakování. |
| Opakuj pořád | Když má zařízení trvale sledovat okolí. |
| Opakuj dokud | Když čekáme na splnění podmínky. |
| Cyklus s podmínkou uvnitř | Když se v každém kole může stát něco jiného. |
Ukázka
Program, který každou sekundu změří teplotu, potřebuje opakování. Program, který jen jednou zobrazí ikonu, cyklus nepotřebuje.
Praktický úkol
Navrhni algoritmus minutky. Určete, jak se nastaví čas, co se opakuje během odpočítávání a co se stane po jeho dokončení.
Tahák
- Cyklus musí mít jasný smysl.
- U podmíněného opakování je potřeba vědět, kdy se cyklus zastaví.
- Nekonečný cyklus není vždy chyba; u zařízení sledujícího okolí může být záměrem.
Co už umím
- Umím najít část algoritmu, která se opakuje.
- Umím vybrat vhodný cyklus.
- Umím vysvětlit, kdy je nekonečné opakování problém.
Návaznost na ŠVP
- Programové konstrukce - cykly.
- Rozpozná nekonečné opakování.
- Sestavuje algoritmy pro řešení konkrétních úloh.