VÝUKOVÝ MATERIÁL Identifikační údaje školy
Číslo projektu Název projektu Číslo a název šablony Autor Tematická oblast Číslo a název materiálu Anotace Vytvořeno Určeno pro Přílohy
Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 CZ.1.07/1.5.00/34.1076 Pro vzdělanější Šluknovsko 32 – Inovace a zkvalitnění výuky prostřednictvím ICT 0207 Mgr. Bc. Jan Škoda Programování VY_32_INOVACE_0207_0114 Vývojové diagramy Žák si upevní učivo v oblasti tvorby vývojových diagramů 16. 7. 2013 3. ročník oboru Informační technologie Bez příloh
Metodický list • Učitel: • Výklad s projekcí elektronického učebního materiálu. • Ukázka obecného postupu činností. • Monitorování činnosti žáků.
• Žák: • Sleduje výkladovou projekci a demonstraci učitele. • Procvičuje.
Vývojové diagramy
Algoritmus • Slovo "algoritmus" je odvozeno od jména perského matematika (9. století) Abu Jafar Mohammed. • Zabýval se především pravidly pro aritmetické operace s čísly. • Algoritmus můžeme definovat jako jednoznačně určenou posloupnost konečného počtu elementárních kroků vedoucí k řešení daného problému, přičemž musí být splněny základní vlastnosti každého algoritmu: • • • • • •
Hromadnost a univerzálnost Determinovanost (jednoznačnost) Konečnost Rezultativnost Korektnost Opakovatelnost
Algoritmus • Hromadnost a univerzálnost - algoritmus musí vést k řešení celé třídy úloh, vzájemně se lišících pouze vstupními údaji. • Musí řešit úlohu pro libovolnou přípustnou kombinaci vstupních dat a musí pokrývat všechny situace, které mohou při výpočtu nastat.
• Determinovanost (jednoznačnost) - v každém kroku algoritmem popsaného postupu musí být jednoznačně určeno, co je výsledkem tohoto kroku a jak má algoritmus dále pokračovat. • Důsledkem této vlastnosti je, že pro stejná vstupní data vydá algoritmus vždy stejný výsledek.
Algoritmus • Konečnost - algoritmus v konečné době skončí (jinak by byl nepoužitelný). • Rezultativnost - algoritmus při zadání vstupních dat vždy vrátí nějaký výsledek (může se jednat i jen o chybové hlášení). • Korektnost - výsledek vydaný algoritmem musí být správný. • Opakovatelnost – při použití stejných vstupních údajů musí algoritmus dospět vždy k témuž výsledku.
Využití • Vývojový diagram je symbolický algoritmický jazyk, který se používá pro názorné zobrazení algoritmu zpracování informací a případnou stručnou publikaci programů. • Tento jazyk je tvořen přesně definovanými značkami s jejich jednoznačným významem (sémantikou - slovník) a pravidly jak tyto značky ve vzájemné souvislosti používat (syntaxe - gramatika). • Pro kreslení vývojových diagramů platí od 1. ledna 1996 nová česká státní norma ČSN ISO 5807 "Zpracování informací".
Symboly • Symboly vývojových diagramů představují grafické značky přesně definovaného významu. • Pro upřesnění funkce symbolu se do nich vpisují slovní nebo symbolické operace, nebo i celé skupiny operací. • Způsob psaní a symbolika tohoto textového zápisu nejsou normou určeny. • Doporučuje se však používat jednoduchý text a výpočetní vztahy s použitím matematických značek podle normy ČSN ISO 31-11 "Veličiny a jednotky".
Symboly vývojového diagramu • Pravidla pro úsečku • svislé nebo vodorovné čáry, • mohou se křížit nebo spojovat, • směr dolů a doprava je prioritní. V tomto případě není nutné použít šipky. • Šipky se používají jenom v případě, že tento směr je jiný, nebo když je třeba směr toku informace zvýraznit, například při znázornění iterace. • Diagram začíná nahoře a končí dole.
Symboly vývojového diagramu • Několik symbolů, které byly standardizovány pro diagramy datových toků, se využívá v diagramech řídících toků. • Kosočtverec značí řídící strukturu. • Operace je reprezentována lichoběžníkem. Používá se k znázornění operace nebo úpravy, která může být provedena pouze ručně. • Datový soubor je znázorněn pomocí válce.
Symboly vývojového diagramu • Obdélník definuje dílčí krok zpracování algoritmu. • Kosočtverec — větvení postupu v algoritmu v závislosti na splnění podmínky, viz skok. • Obdélník se zaoblenými rohy — počátek nebo ukončení zpracování algoritmu. • Kruh — spojka jednotlivých úseček. • Vývojový diagram je také jedním ze sedmi základních nástrojů zlepšování kvality.
Značky • Konec a začátek algoritmu • Běžný příkaz • Podmíněný výraz • Cyklus s určeným počtem opakování • Cyklus s podmínkou na konci • Cyklus s podmínkou na začátku • Ruční vstup Zdroj: Autor
Značky • Zobrazení výstupu • Zpracování souboru • Uložení dat do souboru • Podprogram • Spojovací značka • Spojovací čára Zdroj: Autor
Sekvence • Lineární zpracování programu – za sebou
Zdroj: Autor
Větvení • Program se větví na několik částí. • Která z těchto částí se vykoná, závisí často na podmínce. • Rozlišujeme: • Neúplné podmínky (první obrázek). • Úplné podmínky (druhý obrázek).
-
+
Zdroj: Autor
+
Cykly • Cykly rozdělujeme na: • Cykly bez podmínky (známe počet opakování). • Cykly s podmínkou na začátku (první obrázek). • Cykly s podmínkou na konci (druhý obrázek).
+
Zdroj: Autor
Příklad
Start
Žárovka svítí?
ano
ne Je připojena na zdroj el. energie?
ne
Připojit zdroj el. energie
ano ne Vyměnit žárovku
Konec Zdroj: Autor
Žárovka svítí?
ano
Cvičení 1. Sestrojte algoritmus, který vytiskne všechny dělitele zadaného přirozeného čísla. 2. Sestrojte algoritmus, který načte N čísel a vytiskne, kolik jich je lichých. 3. Sestrojte algoritmus, který sečte čísla od 1 do N. N bude zadáno. 4. Sestrojte algoritmus, který načte 100 čísel a zjistí kolik z nich je kladných. 5. Sestrojte algoritmus, který načte n čísel a vypočítá jejich aritmetický průměr. 6. Sestrojte algoritmus, který načte n čísel a zjistí největší z nich.
Zroje • CHYTIL, Jiří a Zdeněk LEHOCKÝ. Vývojové diagramy: 1. díl [online]. 2005, 32 s. [cit. 2013-07-16]. Dostupné z: http://valter.byl.cz/sites/default/files/Vyvojove_diagramy.pdf. • CHYTIL, Jiří a Zdeněk LEHOCKÝ. Vývojové diagramy: 2. díl [online]. 2005, 32 s. [cit. 2013-07-16]. Dostupné z: http://valter.byl.cz/sites/default/files/Vyvojove_diagramy.pdf. • CHYTIL, Jiří a Zdeněk LEHOCKÝ. Vývojové diagramy: 6. díl [online]. 2005, 32 s. [cit. 2013-07-16]. Dostupné z: http://valter.byl.cz/sites/default/files/Vyvojove_diagramy.pdf. • LEVAY, Radek. Vývojové diagramy. In: Ikvalita.cz [online]. 2008 [cit. 2013-07-16]. Dostupné z: http://www.ikvalita.cz/ download/kap2.pdf.