Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Vývojové diagramy a základy algoritmizace

Podobné prezentace


Prezentace na téma: "Vývojové diagramy a základy algoritmizace"— Transkript prezentace:

1 Vývojové diagramy a základy algoritmizace
Vývojový diagram je grafické vyjádření požadovaného algoritmu (znázornění jednotlivých příkazů, ze kterých se algoritmus skládá). Pro vývojový diagram se používají stanovené značky, které nelze měnit. 4

2 Vývojový diagram nejdůležitější značky
spojnice - orientované - neorientované

3 Nejdůležitější značky
mezní značky Program END RETURN KONEC RETURN ZAČÁTEK

4 Nejdůležitější značky
ruční zadání vstupních dat A R=

5 Nejdůležitější značky
zpracování Výpočet Výpočet VÝPOČET C=A+B

6 Nejdůležitější značky
Tisk výstup vstup spojka TISK Tisk ČTI: A, B 4 4

7 Nejdůležitější značky
podmínka (rozhodování) A>20 NE ANO A>20

8 Nejdůležitější značky
přepínání

9 Nejdůležitější značky
cyklus

10 Nejdůležitější značky
čtení z bloku dat podprogram čti: N, A1 Čti: N, A1 6200 6200

11 Začátek a konec algoritmu

12 Špatný algoritmus, protože byla porušena podmínka rezultativnosti - konečnosti - algoritmus musí proběhnout v konečném počtu kroků Písnička se bude zpívat pořád dokola a nikdy neskončí Došlo k zacyklení programu

13

14

15 Špatný algoritmus, protože byla porušena podmínka rezultativnosti - konečnosti - algoritmus musí proběhnout v konečném počtu kroků Co když hned ze začátku je I větší než 10? Došlo k zacyklení programu

16

17 Věcná správnost algoritmu

18 Špatný algoritmus, protože byla porušena podmínka věcné správnosti
Algoritmus je funkční, ale dostaneme nesprávný výsledek

19 V programech nelze použít zlomkové čáry – používá se lomítko /
Rovnici Musíme zapsat takto: X:=(A+B)/(C+D) V programech nelze použít √ (odmocninu) a . (násobení) Místo znaku √ používáme výraz SQRT a místo znaku . používáme znak * Místo znaku  používáme výraz PI

20 Jednoznačnost algoritmu

21 Špatný algoritmus, protože byla porušena podmínka jednoznačnosti – (determinovanost - podmíněnost) - všechny operace i jejich návaznosti musí být jednoznačně určeny (definovány) a nic nesmí být náhodné

22

23

24 Špatný algoritmus, protože byla porušena podmínka jednoznačnosti – (determinovanost - podmíněnost) - všechny operace i jejich návaznosti musí být jednoznačně určeny (definovány) a nic nesmí být náhodné Co když ve jmenovateli bude 0? Musíme ošetřit hodnoty, které se blíží k nekonečnu Pokud je řešení v oboru reálných čísel, nesmí být výraz pod odmocninou záporný Jsou to nejzávažnější chyby v programech

25

26 Obecnost algoritmu 5

27 Špatný algoritmus, protože byla porušena podmínka obecnosti – (hromadnosti) - algoritmus musí řešit úlohu pro různé vstupní hodnoty

28

29 Opakovatelnost algoritmu

30 Špatný algoritmus, protože byla porušena podmínka opakovatelnosti - při stejných vstupních hodnotách musíme dostat vždy stejný výsledek Proměnná I je neznámá

31

32 Sekvence Sekvence je nejjednodušším typem algoritmu, který se skládá (kromě mezních značek) pouze ze sekvenčních bloků Během sekvence nesmí docházet k větvení algoritmu ani k návratu zpět

33 Příklad (A=5, B=10) – co se zobrazí na konci programu?

34 Příklad (1) Je dán obdélník o stranách A, B. Vytvořte algoritmus pro výpočet obvodu (O) a obsahu (S) tohoto obdélníka.

35 Příklad (2) Je dána kružnice o poloměru R. Vytvořte algoritmus pro výpočet obvodu (O) této kružnice a výpočet obsahu (S) kruhu, který leží uvnitř této kružnice.

36 Příklad (3) Je dán rovnostranný trojúhelník o stranách A. Vytvořte algoritmus pro výpočet obvodu (O) a obsahu (S) tohoto trojúhelníka. Malá nápověda

37 Příklad (4) Je dán pravoúhlý trojúhelník o stranách A, B, C. Vypočítejte stranu C podle Pythagorovi věty.

38 Větvení Nejčastějším důvodem větvení je ošetření nežádoucích důsledků.
Musí být ošetřeny všechny možnosti, které mohou nastat. Dělení Výpočet výrazů s odmocninou Další funkce (goniometrické) 6

39 Situace se musí nejdříve
vyhodnotit Teprve poté se provede činnost

40 Příklad (5) Vytvořte algoritmus pro výpočet výrazu tak, aby se výpočet alespoň jednou uskutečnil.

41 Příklad (6) Vytvořte algoritmus pro výpočet výrazu

42 Příklad (7) Vytvořte algoritmus pro výpočet výrazu

43 Větvení z důvodu žádoucích možností
Výpočet absolutní hodnoty čísla A U tohoto příkladu nejde o ošetření nežádoucího jevu

44 Příklad (8) Vytvořte algoritmus pro zjištění zda zadané číslo je kladné, či záporné

45 Příklad (9) Vytvořte algoritmus pro porovnávání a řazení dvou čísel od největšího do nejmenšího

46 Příklad Vytvořte algoritmus pro nalezení největšího ze tří zadaných čísel

47

48

49 Příklad (10) Vytvořte algoritmus pro určení, zda tři čísla A, B, C mohou tvořit strany trojúhelníka 7

50 Příklad (11) Vytvořte algoritmus pro řešení lineární rovnice
A*X + B =0 Proměnné A, B jsou načítány zvenčí X – hledaný kořen rovnice

51 Příklad (12) Vytvořte algoritmus pro zjištění zda daný žák prospěl s vyznamenáním, prospěl nebo neprospěl. Pro vstup použijte známky ze dvou předmětů. Diagram nakreslete ve wordu a uložte ho na flash disk. Ukládaný soubor pojmenujte svým příjmením.

52 Příklad (13) Vytvořte algoritmus pro vytvoření kalkulačky, která bude pracovat se dvěma čísly. Požadované matematické operace: Sčítání Odečítání Násobení Dělení

53 Příklad (14) Vytvořte algoritmus pro výpočet veličin rychlost, dráha a čas pohybu rovnoměrného přímočarého

54 Cykly Jsou jedním z nejsilnějších nástrojů algoritmů
Podstatou je opakování určité části algoritmu Cyklus musí být konečný Cykly s pevným počtem opakování Cykly řízené podmínkou s podmínkou na začátku cyklu Cykly řízené podmínkou s podmínkou na konci cyklu 8

55 Nekonečný cyklus

56 Cyklus s pevným počtem opakování

57 Některá další značení cyklu

58 Správně zapsaný algoritmus pro tři opakování

59 Cyklus řízený podmínkou podmínka je na začátku

60 Cyklus řízený podmínkou podmínka je na konci

61 Čekací smyčka

62 Příklad (15) Vytvořte algoritmus pro výpočet výsledného odporu R, který se skládá ze dvou paralelních odporů R1 a R2. Algoritmus bude fungovat tak, že budete moci postupně zadávat různé hodnoty odporů R1 a R2 pro výpočet výsledného odporu R.

63 Příklad (16) Vytvořte algoritmus pro zobrazení čísel od jedničky do desítky

64 Příklad (17) Vytvořte algoritmus pro sečtení čísel od jedničky do desítky

65 Příklad (18) Vytvořte algoritmus pro výpočet faktoriálu zadaného čísla


Stáhnout ppt "Vývojové diagramy a základy algoritmizace"

Podobné prezentace


Reklamy Google