Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
ZveřejnilMilan Vaněk
1
ALGORITMUS A JEHO VLASTNOSTI 3. října 2012VY_32_INOVACE_160301_Algoritmizace_a_zakladni_pojmy_DUM Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Mgr. Pavlína Mihačová. Obchodní akademie a Střední odborná škola logistická, Opava, příspěvková organizace. Vzdělávací materiál byl vytvořen v rámci OP VK 1.5 – EU peníze středním školám, registrační číslo CZ.1.07/1.5.00/34.0809.
2
ALGORITMUS - PŮVOD Název algoritmus pochází ze začátku devátého století z Arábie. V letech 800 až 825 napsal arabský matematik Muhammad ibn Musa al Chwarizmi dvě knihy, z nichž jedna se v latinském překladu jmenovala Algoritmi dicit, česky Tak praví al Chwarizmi. Byla to kniha postupů pro počítání s čísly.
3
VLASTNOSTI ALGORITMU Algoritmus je přesný postup, který je zapotřebí k vykonání určité činnosti. Navíc každý algoritmus musí mít následující vlastnosti: KonečnostKonečnost Hromadnost a univerzálnostHromadnost a univerzálnost JednoznačnostJednoznačnost OpakovatelnostOpakovatelnost RezultativnostRezultativnost SprávnostSprávnost
4
KONEČNOST znamená, že požadovaný výsledek musí být poskytnut v rozumném čase (pokud by výpočet trval na nejrychlejším počítači např. jeden milion let, těžko bychom mohli hovořit o řešení algoritmu, nemluvě o výpočtu, který by neskončil vůbec). Za rozumný lze považovat čas, kdy nám výsledek výpočtu k něčemu bude.
5
KONEČNOST Podívejme se nejprve jak by vypadal špatný algoritmus, ve kterém by byla tato podmínka porušena. Vezměme si text písničky „Pes jitrničku sežral“ Vidíte, že se písnička bude neustále opakovat dokola a tento algoritmus nikdy neskončí. Pokud byste podle algoritmu napsali program, který by vypisoval text písničky, program by nebyl k zastavení. Musel by být násilně ukončen, nebo byste museli vypnout počítač (což nejsou nejlepší řešení). Pes jitrničku sežral, docela maličkou chytil ho při tom kuchař a klepl ho paličkou. Plakali všichni psové, kopali jemu hrob na desce mramorové byl nápis těchto slov Jak píseň upravit? Obrázek 1 písnička
6
KONEČNOST V běžném životě se spoléháme na inteligenci člověka – až ho zpívání přestane bavit nebo až posluchači usnou. Počítač však vlastní inteligenci nemá a plní pouze úkoly, které mu zadáme. Doplnili bychom podmínku “Chceš skončit?“, která umožní ukončení algoritmu. Jak upravit algoritmus pro počítač? Obrázek 1
7
KONEČNOST Pes jitrničku sežral docela maličkou chytil ho při tom kuchař a klepl ho paličkou. Plakali všichni psové, kopali jemu hrob na desce mramorové byl nápis těchto slov Chceš skončit? začátek konec Ano Ne ŘEŠENÍ Obrázek 2
8
HROMADNOST A UNIVERZÁLNOST znamená, že algoritmus není sestrojen pouze pro jediný problém, ale celou řadu problémů – tj. řeší celou přesně vymezenou třídu konkrétních problémů, které se liší jen vstupními hodnotami.
9
HROMADNOST A UNIVERZÁLNOST Představte si, že zpracujete program, který dokáže spočítat 1+1. Algoritmus bude sice velice jednoduchý, ale pokud budeme chtít sečíst jiná dvě čísla, musíme vytvořit sice podobný, ale přesto úplně nový algoritmus. Je nutné algoritmus zobecnit, aby uměl sčítat jakákoliv dvě čísla. Co je nutné změnit? Obrázek 1
10
HROMADNOST A UNIVERZÁLNOST začátek konec čti a, b soucet = a + b tisk soucet ŘEŠENÍ Obrázek 2
11
JEDNOZNAČNOST Každý algoritmus je složen z kroků, které na sebe navazují. Návaznost jednotlivých kroků musí být jednoznačně definována – po vykonání každého kroku algoritmu je jednoznačně určeno, jakou činností se má pokračovat – tím je zajištěno, že při realizaci daného algoritmu dostaneme pro tytéž vstupní hodnoty tentýž výsledek.
12
JEDNOZNAČNOST Porušení podmínky jednoznačnosti bývá nejčastější chybou, která se u algoritmů vyskytuje. Je to tím, že tvůrci algoritmů musí pečlivě zvažovat všechny možnosti, které mohou během zpracování nastat. Uveďme si příklad, kdy se potkají dva kamarádi a jeden se ptá druhého: „Co budeš dělat zítra?“ Druhý odpoví: „Půjdu do kina nebo na koupaliště.“ Je to algoritmus? Obrázek 3
13
JEDNOZNAČNOST V tomto případě je jasně vidět, že byla porušena podmínka jednoznačnosti. Dotyčný neví, zda půjde do kina nebo na koupaliště. Aby byl algoritmus správný, musí se do něj doplnit podmínka, která povede k rozvětvení algoritmu. Upravená odpověď druhého kamaráda: „Bude-li krásně slunečno půjdu na koupaliště, nebude-li slunečno půjdu do kina.“
14
NeAno JEDNOZNAČNOST začátek konec Bude krásně slunečno? Půjdu na koupaliště Půjdu do kina ŘEŠENÍ Obrázek 2
15
OPAKOVATELNOST znamená, že algoritmus je možné kdykoliv zopakovat a při stejných podmínkách se bude chovat stejně. Při použití stejných vstupních údajů musí algoritmus dospět k témuž výsledku. Obrázek 2
16
REZULTATIVNOST znamená, že 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í). Obrázek 2
17
SPRÁVNOST znamená, že výsledek vydaný algoritmem musí být správný. Nejčastější chybou je použití špatně zapsaného vzorečku při výpočtu. Např.: pro výpočet obvodu obdélníka vyberte (klikněte na něj) správně zapsaný vzorec: o = 2A + B o = 2(A + B)
18
VÝBORNĚ
19
ŠPATNĚ ZKUS TO ZNOVU
20
KŘÍŽOVKA Spousta nových pojmů. Co jste si zapamatovali? Vyplňte křížovku.křížovku.
21
CITACE ZDROJŮ ZDROJE OBRÁZKŮ: Obrázek 1 Symbols & Shapes - cloud r - Public Domain Clip Art. PDClipart.org - Public Domain Clip Art [online]. [cit. 2012-10-03]. Dostupné z: http://www.pdclipart.org/displayimage.php?album=141&pos=79 http://www.pdclipart.org/displayimage.php?album=141&pos=79 Obrázek 2 Arrows & Pointers - arrow bold right - Public Domain Clip Art. PDClipart.org - Public Domain Clip Art [online]. [cit. 2012-10-03]. Dostupné z: http://www.pdclipart.org/displayimage.php?album=27&pos=117http://www.pdclipart.org/displayimage.php?album=27&pos=117 Obrázek 3 Symbols & Shapes - cloud l - Public Domain Clip Art. PDClipart.org - Public Domain Clip Art [online]. [cit. 2012-10-03]. Dostupné z: http://www.pdclipart.org/displayimage.php?album=search&cat=0&pos=19 http://www.pdclipart.org/displayimage.php?album=search&cat=0&pos=19 SOFTWARE: Křížovka vytvořena ve freewarovém programu HOT POTATOES. Dostupné z: http://hotpot.uvic.ca/ http://hotpot.uvic.ca/ Pro vytvoření vývojových diagramů byl použit Microsoft PowerPoint 2010
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.