1. Algoritmus a vazba na program

1.5. Vývojový diagram

Vývojový diagram (anglicky „Flowchart) je velmi názornou pomůckou v začátcích výuky programování. Detailně postihuje všechny možnosti průběhu zpracování programu a jeho větvení na základě testů podmínek. V nedávné minulosti byla metoda vývojových diagramů preferována, a dokonce existovala závazná československá norma (ČSN) značek a způsobu jejich kreslení. V současné době se již tato norma neužívá a je ponecháno na řešiteli, jak se s problémem vyrovná. Existují však doporučení, která, jsou-li důsledně dodržována, se jeví velmi užitečná.

Při kreslení vývojových diagramů se vyžívají značky pro bloková schémata, které se propojují pomocí orientovaných čar. Doporučený směr kreslení je shora dolů a zleva doprava. Při větší složitosti problému se vývojový diagram stává nepřehledný a může vést k vytvoření částí programů se skrytými vedlejšími efekty.

Značky používané ve vývojovém diagramu lze rozdělit na: [2]

  • Mezní značky – představují vstup do algoritmu nebo výstup z algoritmu. Používají se také pro specifikaci začátku nebo konce podprocesu (v programování podprogramu) v algoritmu. Mají vždy jen jednu orientovanou čáru – vstupní nebo výstupní

  • Sekvenční bloky – označují sekvenční postup (provádění) algoritmem. Lze se do něj dostat pouze z předchozího prvku a po jeho vykonání lze postoupit na následující prvek. V jejich průběhu nesmí dojít k rozvětvení algoritmu. Příkladem sekvenčního bloku je blok vstupu, výstupu, proces

  • Větvení – k větvení dochází na základě podmínky (ne nahodile). Je-li podmínka splněna, v algoritmu se pokračuje příslušnou větví

  • Další značky – mezi další značky lze zařadit cykly, podproces, spojovací prvky, atd.


Pro ilustraci záznamu algoritmu do podoby vývojového diagramu použijeme několik ilustrativních příkladů, které nám pomohou pochopit podstatu jednotlivých základní značek používaných při tvorbě vývojového diagramu. Vývojový diagram budeme vytvářet pomocí aplikace Flowgorithm (http://www.flowgorithm.org/). Existuje také jiné aplikace pro tvorbu vývojových digramů, např. MS Visio, Draw.io, atd.