Základy algoritmizace

Podobné dokumenty
Algoritmus. Přesné znění definice algoritmu zní: Algoritmus je procedura proveditelná Turingovým strojem.

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

Vlastnosti algoritmu. elementárnost. determinovanost. rezultativnost. konečnost. hromadnost. efektivnost

Operátory pro maticové operace (operace s celými maticemi) * násobení maticové Pro čísla platí: 2*2

Pojem algoritmus. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

3 Co je algoritmus? Trocha historie Definice algoritmu Vlastnosti algoritmu... 3

Algoritmus. Cílem kapitoly je seznámit žáky se základy algoritmu, s jeho tvorbou a způsoby zápisu.

Algoritmizace prostorových úloh

Algoritmy a algoritmizace

Pojem algoritmus a jeho základní vlastnosti

Algoritmizace. Obrázek 1: Přeložení programu překladačem

Lekce 01 Úvod do algoritmizace

Výukový materiál zpracován v rámci projektu EU peníze školám

ALGORITMIZACE Příklady ze života, větvení, cykly

Seminář z IVT Algoritmizace. Slovanské gymnázium Olomouc Tomáš Kühr

Algoritmizace- úvod. Ing. Tomáš Otáhal

Úvod do informatiky. Miroslav Kolařík

Pojem algoritmus. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava

Algoritmizace prostorových úloh

Algoritmizace a programování. Ak. rok 2012/2013 vbp 1. ze 44

Digitální učební materiál

VISUAL BASIC. Přehled témat

2. lekce Algoritmus, cyklus Miroslav Jílek

Pracovní listy - programování (algoritmy v jazyce Visual Basic) Algoritmus

ALGORITMIZACE PROGRAMOVÁNÍ VT3/VT4

Martin Hejtmánek hejtmmar

1 Základy algoritmizace a programování. 1.1 Algoritmus Možnosti zápisu algoritmů. Základy algoritmizace a programování

Algoritmizace. 1. Úvod. Algoritmus

Základy algoritmizácie a programovania

ALGORITMIZACE. Výukový materiál pro tercii osmiletého gymnázia

Základy algoritmizace, návrh algoritmu

Informatika Algoritmy

Digitální učební materiál

Seminář z Informatiky a výpočetní techniky. Slovanské gymnázium Olomouc 4. září 2014 Tomáš Kühr

Algoritmus. Cílem kapitoly je seznámit žáky se základy algoritmu, s jeho tvorbou a způsoby zápisu.

Tematická oblast: Programování 2 (VY_32_INOVACE_08_2_PR) Anotace: Využití ve výuce: Použité zdroje:

ŠVP Gymnázium Ostrava-Zábřeh Úvod do programování

Identifikátor materiálu: ICT-4-01

ANOTACE vytvořených/inovovaných materiálů

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Digitální učební materiál

Komplexní čísla, Kombinatorika, pravděpodobnost a statistika, Posloupnosti a řady

Základy algoritmizace a programování

Digitální učební materiál

Aplikační programové vybavení

Digitální učební materiál

Informatika. tercie. Mgr. Kateřina Macová 1

Tematická oblast: Rovnice (VY_32_INOVACE_05_1)

Programy na PODMÍNĚNÝ příkaz IF a CASE

Polynomy. Mgr. Veronika Švandová a Mgr. Zdeněk Kříž, Ph. D. 1.1 Teorie Zavedení polynomů Operace s polynomy...

Inovace a zkvalitnění výuky prostřednictvím ICT

Digitální učební materiál

Algoritmizace prostorových úloh

Elektronická komunikace

Michal Krátký. Úvod do programování. Cíl kurzu. Podmínky získání zápočtu III/III

10. Složitost a výkon

SEZNAM VZDĚLÁVACÍCH MATERIÁLŮ - ANOTACE

ALGORITMIZACE A PROGRAMOVÁNÍ

SEZNAM VZDĚLÁVACÍCH MATERIÁLŮ - ANOTACE

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Poslední nenulová číslice faktoriálu

2.6. VLASTNÍ ČÍSLA A VEKTORY MATIC

Podmínky pro hodnocení žáků v předmětu informatika

Úvod do programování

SEZNAM ANOTACÍ. CZ.1.07/1.5.00/ III/2 Inovace a zkvalitnění výuky prostřednictvím ICT VY_32_INOVACE_MA1 Základní poznatky z matematiky

Lekce 04 Řídící struktury

Algoritmy. BI-PA1 Programování a Algoritmizace I. Ladislav Vagner

Podmínky pro hodnocení žáků v předmětu informatika

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

ŠABLONY INOVACE OBSAH UČIVA

Základní deska (motherboard, mainboard)

ICT podporuje moderní způsoby výuky CZ.1.07/1.5.00/ Matematika analytická geometrie. Mgr. Pavel Liška

Digitální učební materiál

Sada 1 - Základy programování

ZÁKLADY PROGRAMOVÁNÍ & ALGORITMIZACE VE VBA

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

Složitost Filip Hlásek

Základy algoritmizace a programování

Booleovská algebra. Pravdivostní tabulka. Karnaughova mapa. Booleovské n-krychle. Základní zákony. Unární a binární funkce. Podmínky.

NPRG030 Programování I RNDr.Tomáš Holan, Ph.D. 4.patro, č

Numerická stabilita algoritmů

SEZNAM ANOTACÍ. Číslo projektu Číslo a název šablony klíčové aktivity Označení sady DUM Tematická oblast

Kritéria hodnocení praktické maturitní zkoušky z databázových systémů

Digitální učební materiál

Vývojové diagramy 1/7

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

Algoritmizace, základy programování, VY_32_INOVACE_PRG_ALGO_01

PROGRAMOVACÍ JAZYKY A PŘEKLADAČE REALIZACE PŘEKLADAČE I

Rovnice v oboru komplexních čísel

Základy algoritmizace a programování. Manažerské informační systémy

Gymnázium Jiřího Ortena, Kutná Hora

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Procesor. Hardware - komponenty počítačů Procesory

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Mgr. Ladislav Zemánek Maturitní okruhy Matematika Obor reálných čísel

Maturitní témata profilová část

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

Algoritmizace. Jiří Vyskočil, Marko Genyg-Berezovskyj 2010

Transkript:

Algoritmus Toto je sice na první pohled pravdivá, ale při bližším prozkoumání nepřesná definice. Například některé matematické postupy by této definici vyhovovaly, ale nejsou algoritmy. Přesné znění definice algoritmu zní: Algoritmus je procedura proveditelná Turingovým strojem. Turingův stroj (1937) je teoretický model počítače popsaný matematikem Alanem Turingem. Skládá se z procesorové jednotky, tvořené konečným automatem a programu ve tvaru pravidel přechodové funkce a potenciálně nekonečné pásky pro zápis mezivýsledků a vstupů dat. Využívá se pro modelování algoritmů v teorii vyčíslitelnosti.

Algoritmus Algoritmus je schematický postup pro řešení určitého druhu problémů, který je prováděn pomocí konečného množství přesně definovaných kroků. nebo Algoritmus lze definovat jako jednoznačně určenou posloupnost konečného počtu elementárních kroků vedoucí k řešení daného problému (úlohy), přičemž musí být splněny základní vlastnosti každého algoritmu. Ačkoliv se dnes tento pojem používá především v informatice a přírodních vědách obecně, tak je jeho působnost daleko širší (kuchyňské recepty, návody a postupy...). Samotné slovo algoritmus pochází ze jména perského matematika 9. století Abu Jafar Muhammada ibn Mūsā al- Chwārizmího, který ve svých dílech položil základy algebry (arabské číslice, řešení lineárních a kvadratických rovnic).

Vlastnosti algoritmů (1) 1) Konečnost Algoritmus má konečné množství kroků (musí mít začátek konec). Po konečném počtu kroků musí dojít od počátku do konce. 2) Korektnost (správnost) Algoritmus skončí pro libovolná (korektní) data správným výsledkem v konečném množství kroků. Jinak řečeno: algoritmus je správný tehdy, když pro všechny údaje splňující vstupní podmínku se proces zastaví a výstupní údaje splňuji výstupní podmínku. 3) Obecnost (hromadnost, univerzálnost) Algoritmus neřeší jeden konkrétní problém (např. výpočet 9 + 3), ale řeší obecnou třídu obdobných problémů (např. výpočet součet dvou čísel). 4) Rezultativnost Algoritmus při zadání vstupních dat vždy vrátí výsledek (může se jednat i o chybové hlášení).

Vlastnosti algoritmů (2) 5) Jednoznačnost (Determinovanost) Každý krok algoritmu musí být jednoznačně a přesně definován. V každé situaci musí být naprosto zřejmé, co a jak se má provést, jak má provádění algoritmu pokračovat. Protože běžný jazyk neposkytuje naprostou přesnost a jednoznačnost vyjadřování, byly pro zápis algoritmů navženy programovací jazyky, ve kterých má každý příkaz jasně definovaný. 6) Opakovatelnost Při stejných vstupních hodnotách musíme dostat vždy stejný výsledek. 7) Srozumitelnost Algoritmus musí být srozumitelný i pro uživatele, který daný algoritmus nevytvářel.

Jak sestavit algoritmus? Popsat všechny operace, pomocí kterých transformujeme vstupní data na požadovaná data výstupní. Počáteční údaje = vstupní data Požadovaný výsledek = výstupní data Možnosti reprezentace algoritmů: slovní popis, matematický zápis, strukturogramy, rozhodovací tabulky, vývojové diagramy, počítačové programy.

Vývojové diagramy Vý vojový diagram je graficke zna zorne ní jednotlivý ch kroků (pr íkazů ), ze který ch se skla da, a jejich na vazností pomocí normalizovaný ch znac ek. Základní značky pro tvorbu vývojových diagramů Kvadratická rovnice Mezní značka (začátek a konec programu) Načti a, b, c Vstup a výstup hodnot (dat) d = b 2-4*a*c Zpracování (příkaz, operace, činnost) Ano Podmínka D < 0 Ne Větvení Výpočet kořenů kvadratické rovnice Podprogram, funkce, procedura 1 Spojka Cyklus i = 1, n Příprava (např. příprava cyklu)

Vývojové diagramy Základní algoritmizační úloha: výměna obsahu dvou proměnných Jedna se o c astoů operaci, ktera je soůc a stí mnoha dals ích algoritmů. Výměna proměnných Načti a, b pom = a a = b b = pom Zobraz a, b Konec

Vývojové diagramy Výpočet kořenů kvadratické rovnice Kvadratická rovnice Načti a, b, c D = b 2-4*a*c D < 0 Ano Ne Ano D == 0 Rovnice nemá řešení v R x = -b/(2*a) Ne Rovnice má jedno řešení: x x1 = (-b+ (D))/(2*a) x2 = (-b- (D))/(2*a) Rovnice má řešení: x1, x2 Konec programu

Vývojové diagramy Součet číslic v čísle Sestavte algoritmůs, který zjistí soůc et cifer v zadane m cele m c ísle. Vý stůpem algoritmů bůde zadane c íslo a jeho ciferný soůc et. Součet číslic v celém čísle Načti a Poznámka: Algoritmus využívá toho, že většina programovacích jazyků má operaci modulo - tedy zjištění zbytku po celočíselném dělení. V PHP, Javě, C # a dalších jazycích se pro operaci modulo používá operátor %. zaloha = a suma = 0 a >= 10 - suma = suma + a + cislo = a % (10) Zadali jste číslo: zaloha a = (a-cislo)/10 Součet číslic čísla zaloha je: suma suma = suma + cislo Konec programu

Zdroje Roubal, Pavel. Informatika a výpočetní technika pro střední školy praktická učebnice. ISBN: 978-80-251-3227-2.

jméno autora Tomáš Žižka název projektu Informatika a digitální technika číslo projektu CZ.1.07/1.5.00/34.0158 číslo šablony III/2 Inovace výuky pomocí ICT předmět/ třída (ročník) Informatika/oktáva pořadové číslo DUM 20 datum 22. 4. 2013 název DUM Základy algoritmizace metodická poznámka k využití Výuková prezentace, která je zaměřena na problematiku algoritmizace a programování. Určeno pro frontální výuku s celou třídou.