1 / 21

Algoritmus a jeho vlastnosti

3 . října 2012. VY_32_INOVACE_160301_Algoritmizace_a_zakladni_pojmy_DUM. Algoritmus a jeho vlastnosti. 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.

tudor
Download Presentation

Algoritmus a jeho vlastnosti

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 3. října 2012 VY_32_INOVACE_160301_Algoritmizace_a_zakladni_pojmy_DUM Algoritmus a jeho vlastnosti 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 ibnMusaal Chwarizmidvě knihy, z nichž jedna se v latinském překladu jmenovala Algoritmidicit, č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čnost • Hromadnost a univerzálnost • Jednoznačnost • Opakovatelnost • Rezultativnost • Sprá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í). písnička Jak píseň upravit? 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 Obrázek 1

  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 Řešení začátek 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 Ano Chceš skončit? Ne konec 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 Řešení začátek čti a, b soucet = a + b tisk soucet konec 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. Jednoznačnost Řešení začátek Bude krásně slunečno? Ne Ano Půjdu na koupaliště Půjdu do kina konec 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.

  21. CITACE ZDROJŮ ZDROJE OBRÁZKŮ: • Obrázek 1Symbols& Shapes - cloud r - Public DomainClip Art. PDClipart.org - Public DomainClip Art [online]. [cit. 2012-10-03]. Dostupné z: http://www.pdclipart.org/displayimage.php?album=141&pos=79 • Obrázek 2Arrows & 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=117 • Obrázek 3Symbols& Shapes - cloud l - Public DomainClip Art. PDClipart.org - Public DomainClip Art [online]. [cit. 2012-10-03]. Dostupné z: 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/ • Pro vytvoření vývojových diagramů byl použit Microsoft PowerPoint 2010

More Related