Algoritmus

Preview:

DESCRIPTION

Algoritmus. po krocích rozepsaný návod k nějaké činnosti 8 00-825 arabsk ý matematik Muhamad ibn Musá al Chwárizmí , lat. překlad jeho knihy o početních postupech „ Agoritmi dicit “ – “ Tak prav í Al Chwárizmí “. - PowerPoint PPT Presentation

Citation preview

Algoritmus

• po krocích rozepsaný návod k nějaké činnosti

• 800-825 arabský matematik Muhamad ibn Musá al Chwárizmí, lat. překlad jeho knihy o početních postupech „Agoritmi dicit“ – “Tak praví Al Chwárizmí“.

• 30. léta 20. století znovuzavedl Alan Turing + navrhnul formální popis algoritmu (tkzv. Turingův stroj)

• algoritmus = matematický pojem, definice pouze opisem (podobně jako bod, množina)

Algoritmus

MNOŽINAVSTUPNÍCH

DAT

MNOŽINAVÝSTUPNÍCH

DAT

ALGORITMUS

transformace množiny

vstupníchdat na

množinu výstupních dat

Vlastnosti algoritmu• Elementárnost. Skládá se z konečného počtu

jednoduchých (elementárních) činností (kroků).

• Determinovanost. V každém kroku lze rozhodnout, jak se má pokračovat (a jestli nenastal konec).

• Konečnost. Algoritmus vždy skončí po konečném počtu kroků.

• Rezultativnost. Vede ke správnému výsledku (k nějakému…).

• Hromadnost. Použitelný pro celou třídu podobných problémů.

• Opakovatelnost. Pro stejné vstupy vždy stejný výstup. Souvisí s determinovaností a rezultativností.

Algoritmus - příklad

Úloha:Sestavit návod na čištění zubů ve formě algoritmu

Cíl:

Vyčištění zubů daného člověka

Prostředky:

zdravá osoba (ústa, zuby, pohyblivá ruka, …)

zubní kartáček, zubní pasta, sklenička na vodu, umyvadlo

ALGORITMUSČIŠTĚNÍ

ZUBŮ

Člověks nevyčištěnýmizuby

Člověks vyčištěnýmizuby

Příprava kelímku a čisticího kartáčku

Vlastní čištění zubů

Uklizení kelímku a kartáčku

Algoritmus - příklad

Algoritmus - příkladALGORITMUS

ČIŠTĚNÍZUBŮ

Člověks nevyčištěnýmizuby

Člověks vyčištěnýmizuby

Vytáhni kartáček a kelímek ze skříňky.

Do kelímku nalej pitnou vodu.

Na kartáček nanes pastu.

Krouži kartáčkem postupně po všech zubech, asi 2 minuty.

Vypláchni si ústa. Smyj zbytky pasty z kartáčku.

Opět krouži 2 min. čistým kartáčkem po zubech.

Vypláchni si ústa.

Umyj kartáček proudem vody.

Vylij vodu z kelímku a vypláchni ho čistou vodou.

Ukliď kelímek i kartáček do skříňky.

Příprava kelímku a čisticího kartáčku

Vlastní čištění zubů

Uklizení kelímku a kartáčku

Algoritmus - příkladALGORITMUS

ČIŠTĚNÍZUBŮ

Člověks nevyčištěnýmizuby

Člověks vyčištěnýmizuby

Vytáhni kartáček a kelímek ze skříňky.

Do kelímku nalej pitnou vodu.

Na kartáček nanes pastu.

Krouži kartáčkem postupně po všech zubech, asi 2 minuty.

Vypláchni si ústa. Smyj zbytky pasty z kartáčku.

Opět krouži 2 min. čistým kartáčkem po zubech.

Vypláchni si ústa.

Umyj kartáček proudem vody.

Vylij vodu z kelímku a vypláchni ho čistou vodou.

Ukliď kelímek i kartáček do skříňky.

Příprava kelímku a čisticího kartáčku

Vlastní čištění zubů

Uklizení kelímku a kartáčku

Otevři skříňku.

Je tam kelímek ?

Ne – konec

Ano – pokračuj

Pusť kohoutkem vodu.

Teče ?

Ne – konec

Ano – pokračuj

Natoč do ¾ kelímku vodu.

Zavři kohoutkem vodu.

……

Zavři skříňku.

Algoritmizace úlohy

Způsoby zápisu algoritmů

• Slovní popis (přirozeným jazykem).• Grafické znázornění (např. vývojový

diagram).• Programovací jazyk (např. C). Obsahuje

klíčová slova, operátory, speciální znaky a identifikátory.

Procesor: objekt (člověk či stroj), který vykonává algoritmem popisovanou

činnost.

Druh procesoru různé formulace kroků algoritmu

Program: algoritmus zapsaný v nějakém programovacím jazyce.

Algoritmizace úlohy

Algoritmizace úlohy

Etapy řešení problému

1. Specifikace (vymezení) problému

2. Analýza problému

3. Sestavení algoritmu

4. Kódování (zápis) algoritmu

5. Testování algoritmu (u programů ladění)

Recommended