Přeskočit obsah

Kapitola 1 - Problém, postup a algoritmus

Doporučený čas: 6 vyučovacích hodin
Výstup kapitoly: Žák vysvětlí, co je algoritmus, a rozhodne, zda je daný postup opravdu algoritmem.

Motivace

Než začneme programovat, musíme vědět, co vlastně řešíme. Dobrý program nevzniká tím, že náhodně skládáme bloky za sebe. Vzniká z dobře popsaného postupu, který má jasný cíl, začátek, konec a podmínky, za kterých funguje.

Co se naučíš

  • rozlišit problém, postup a algoritmus,
  • popsat zadání úlohy, vstup a výstup,
  • vysvětlit základní vlastnosti algoritmu,
  • poznat postup, který je nejednoznačný nebo neproveditelný,
  • určit, pro jaké vstupy algoritmus funguje.

Náčrt obsahu

Téma Smysl
Problém a cíl Žák pojmenuje, čeho má být dosaženo.
Vstup a výstup Žák rozpozná, s čím algoritmus začíná a co má dodat.
Konečnost a jednoznačnost Žák odhalí postup, který se nedá spolehlivě provést.
Správnost Žák ověří, zda postup dává očekávaný výsledek.
Algoritmicky řešitelné úlohy Žák rozhodne, zda je problém vhodný pro přesný postup.

Ukázka

Postup „udělej si dobrý čaj“ není dobrý algoritmus, protože není jasné, co znamená dobrý. Postup „ohřej 250 ml vody na 90 stupňů, vlož sáček čaje na 3 minuty a potom jej vyjmi“ je přesnější, ale stále závisí na tom, zda máme měřič teploty a časovač.

Praktický úkol

Vyber běžnou činnost ze školy nebo domova a zapiš ji jako algoritmus. Potom si ve dvojici ověřte, zda je postup jednoznačný, konečný a proveditelný.

Tahák

Pojem Stručné vysvětlení
Problém Situace, kterou chceme vyřešit.
Algoritmus Přesný a konečný postup vedoucí k řešení.
Vstup Údaje nebo stav, ze kterých postup vychází.
Výstup Výsledek, který má postup dodat.
Podmínka řešení Omezení, za kterých postup funguje.

Co už umím

  • Umím vysvětlit rozdíl mezi postupem a algoritmem.
  • Umím u jednoduché úlohy určit vstup a výstup.
  • Umím najít místo, kde je postup nepřesný.
  • Vysvětlí daný algoritmus nebo program.
  • Určí, zda je daný postup algoritmem.
  • Charakterizuje vstupy, pro něž daný algoritmus funguje.