ALGORITMIZACE PROGRAMOVÁNÍ VT3/VT4



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

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

MATEMATIKA / 1. ROČNÍK. Strategie (metody a formy práce)

MATEMATIKA Charakteristika vyučovacího předmětu 2. stupeň

MATEMATIKA 5. TŘÍDA. C) Tabulky, grafy, diagramy 1 - Tabulky, doplnění řady čísel podle závislosti 2 - Grafy, jízní řády 3 - Magické čtverce

Cvičení z matematiky - volitelný předmět

Základní škola Moravský Beroun, okres Olomouc

Základy algoritmizace

Základní škola Fr. Kupky, ul. Fr. Kupky 350, Dobruška 5.2 MATEMATIKA A JEJÍ APLIKACE MATEMATIKA A JEJÍ APLIKACE Matematika 6.

Tematický plán pro školní rok 2015/2016 Předmět: Matematika Vyučující: Mgr. Jitka Vlčková Týdenní dotace hodin: 5 hodin Ročník: čtvrtý

Vyučovací předmět: Matematika. Charakteristika vyučovacího předmětu

ZŠ ÚnO, Bratří Čapků 1332

ŠKOLNÍ VZDĚLÁVACÍ PROGRAM

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

VZDĚLÁVACÍ OBLAST: MATEMATIKA A JEJÍ APLIKACE VZDĚLÁVACÍ OBOR: MATEMATIKA A JEJÍ APLIKACE PŘEDMĚT: MATEMATIKA 8

Obsahové vymezení Vyučovací předmět Matematika zpracovává vzdělávací obsah oboru Matematika a její aplikace z RVP

Adriana Vacíková. Adriana Vacíková. Adriana Vacíková. Adriana Vacíková. Adriana Vacíková. Adriana Vacíková. Adriana Vacíková

P ř e d m ě t : M A T E M A T I K A

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

Kvadratická rovnice. - koeficienty a, b, c jsou libovolná reálná čísla, a se nesmí rovnat 0

Úvodní opakování, kladná a záporná čísla, dělitelnost, osová a středová souměrnost

Matematika Název Ročník Autor

KOMPLEXNÍ ČÍSLA INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ. Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky

MĚSÍC MATEMATIKA GEOMETRIE

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

Témata absolventského klání z matematiky :

CVIČNÝ TEST 5. OBSAH I. Cvičný test 2. Mgr. Václav Zemek. II. Autorské řešení 6 III. Klíč 17 IV. Záznamový list 19

NPRG030 Programování I 3/2 Z --- NPRG031 Programování II --- 2/2 Z, Zk

PRIMA Přirozená čísla Celá čísla Desetinná čísla Číselná osa Pravidla pro násobení a dělení 10, 100, a 0,1, 0,01, 0,001.. Čísla navzájem opačná

Mgr. Karel Pazourek. online prostředí, Operační program Praha Adaptabilita, registrační číslo CZ.2.17/3.1.00/31165.

CHARAKTERISTIKA. VZDĚLÁVACÍ OBLAST VYUČOVACÍ PŘEDMĚT ZODPOVÍDÁ MATEMATIKA A JEJÍ APLIKACE MATEMATIKA Mgr. Dana Rauchová

Čtvrtek 8. prosince. Pascal - opakování základů. Struktura programu:

Kirchhoffovy zákony. Kirchhoffovy zákony

Podnikání, dálkové formy vzdělávání

TEMATICKÝ PLÁN. září říjen

vzdělávací oblast vyučovací předmět ročník zodpovídá MATEMATIKA A JEJÍ APLIKACE MATEMATIKA 8. MARKUP Druhá mocnina a odmocnina FY Tabulky, kalkulátor

ZŠ ÚnO, Bratří Čapků 1332

Požadavky k opravným zkouškám z matematiky školní rok

Lekce 01 Úvod do algoritmizace

5.3. Matematika a její aplikace

Přehled učiva matematiky 7. ročník ZŠ

Matematika - Prima. množiny zavedení pojmů množina, prvek, sjednocení, průnik, podmnožina

Algoritmizace prostorových úloh

Číslo materiálu Předmět ročník Téma hodiny Ověřený materiál Program

Slouží k opakování učiva 8. ročníku na začátku školního roku list/anotace

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

Cvičení z Lineární algebry 1

MATEMATIKA Maturitní témata společná část MZ základní úroveň (vychází z Katalogu požadavků MŠMT)

ZŠ ÚnO, Bratří Čapků 1332

Projekt OPVK - CZ.1.07/1.1.00/ Matematika pro všechny. Univerzita Palackého v Olomouci

MATURITNÍ TÉMATA Z MATEMATIKY

Střední průmyslová škola strojnická Olomouc, tř.17. listopadu 49

Fuzzy logika Osnova kurzu

Matematika. 8. ročník. Číslo a proměnná druhá mocnina a odmocnina (využití LEGO EV3) mocniny s přirozeným mocnitelem. výrazy s proměnnou

9. Je-li cos 2x = 0,5, x 0, π, pak tgx = a) 3. b) 1. c) neexistuje d) a) x ( 4, 4) b) x = 4 c) x R d) x < 4. e) 3 3 b

Žák plní standard v průběhu primy a sekundy, učivo absolutní hodnota v kvartě.

Vyučovací hodiny mohou probíhat v multimediální učebně a odborných učebnách s využitím interaktivní tabule.

MAT_303 Název: VY_32_INOVACE_01_MAT_303_OZŠ_reálná_čísla_II.docx. MAT_304 Název: VY_32_INOVACE_01_MAT_304_OZŠ_zlomky.docx

Požadavky k opravným zkouškám z matematiky školní rok

Číslo hodiny. Označení materiálu. 1. Mnohočleny. 25. Zlomky. 26. Opakování učiva 7. ročníku. 27. Druhá mocnina, odmocnina, Pythagorova věta

Komplexní číslo. Klíčové pojmy: Komplexní číslo, reálná část, imaginární část, algebraické počty s komplexním číslem

SEMINÁŘ K VÝUCE MATEMATIKA 1

Základní škola Blansko, Erbenova 13 IČO

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

volitelný předmět ročník zodpovídá CVIČENÍ Z MATEMATIKY 8. MACASOVÁ Učivo obsah

Práce s čísly. Klíčové pojmy: Základní matematické operace, zápis složitějších příkladů, mocniny, odmocniny, zkrácené operátory

Volitelné předměty Matematika a její aplikace

Jazyk matematiky Matematická logika Množinové operace Zobrazení Rozšířená číslená osa

CVIČNÝ TEST 10. OBSAH I. Cvičný test 2. Mgr. Renáta Koubková. II. Autorské řešení 6 III. Klíč 17 IV. Záznamový list 19

Matematika - 6. ročník Očekávané výstupy z RVP Učivo Přesahy a vazby desetinná čísla. - zobrazení na číselné ose

SEMINÁŘ K VÝUCE MATEMATIKA

Učivo obsah. Druhá mocnina a odmocnina Druhá mocnina a odmocnina Třetí mocnina a odmocnina Kružnice a kruh

5. UČEBNÍ OSNOVY. 5.2 Matematika a její aplikace Matematika MATEMATIKA A JEJÍ APLIKACE. Blok předmětů: MATEMATIKA.

. Určete hodnotu neznámé x tak, aby

Učební plán 4. letého studia předmětu matematiky. Učební plán 6. letého studia předmětu matematiky

Předmět: MATEMATIKA Ročník: 6.

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ , 5.1 a 5.2 8/14

Jak pracovat s absolutními hodnotami

Učební osnovy Vzdělávací oblast: Matematika a její aplikace Vzdělávací obor: Matematický kroužek pro nadané žáky ročník 9.

Vzdělávací oblast: Matematika a její aplikace Vzdělávací obor: Matematický kroužek pro nadané žáky ročník 9.

Matematika - 6. ročník

ELEKTRONICKÉ KALKULÁTORY Platnost od KAPESNÍ

CVIČNÝ TEST 39. OBSAH I. Cvičný test 2. Mgr. Tomáš Kotler. II. Autorské řešení 5 III. Klíč 11 IV. Záznamový list 13

Požadavky na konkrétní dovednosti a znalosti z jednotlivých tematických celků

- vyučuje se: v 6. a 8. ročníku 4 hodiny týdně v 7. a 9. ročníku 5 hodin týdně - je realizována v rámci vzdělávací oblasti Matematika a její aplikace

Predispozice pro výuku IKT (2015/2016)

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

Příklady pro přijímací zkoušku z matematiky školní rok 2012/2013

Vzdělávací oblast: Matematika a její aplikace Vyučovací předmět: Matematika Ročník: 5.

volitelný předmět ročník zodpovídá PŘÍPRAVA NA PŘIJÍMACÍ ZKOUŠKY Z MATEMATIKY 9. MACASOVÁ

TECHNICKÁ UNIVERZITA V LIBERCI EKONOMICKÁ FAKULTA. VZOR PŘIJÍMACÍ ZKOUŠKY DO NAVAZUJÍCÍHO STUDIA Obor: Manažerská informatika

Informatika Algoritmy

VISUAL BASIC. Přehled témat

MATEMATIKA 1 4 A B C D. didaktický test. Zadání neotvírejte, počkejte na pokyn! Krok za krokem k nové maturitě Maturita nanečisto 2006

VZDĚLÁVACÍ OBLAST: MATEMATIKA A JEJÍ APLIKACE VZDĚLÁVACÍ OBOR: MATEMATIKA A JEJÍ APLIKACE PŘEDMĚT: MATEMATIKA 7

A B C D E F 1 Vzdělávací oblast: Matematika a její aplikace 2 Vzdělávací obor: Matematika 3 Ročník: 6. 4 Klíčové kompetence.

Logické operace. Datový typ bool. Relační operátory. Logické operátory. IAJCE Přednáška č. 3. může nabýt hodnot: o true o false

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

Dodatek č. 3 ke školnímu vzdělávacímu programu. Strojírenství. (platné znění k )

Předpokládané znalosti žáka 1. stupeň:

Transkript:

1 ALGORITMIZACE PROGRAMOVÁNÍ VT3/VT4 Mgr. Martin ŠTOREK LITERATURA ALGORITMIZACE Ing. Jana Pšenčíková ComputerMedia http://www.computermedia.cz/ 2 1

ALGORITMUS Algoritmus je přesný postup, který je potřeba k vykonání určité činnosti Nezbytné podmínky: musí mít a (musí dojít do konce) musí být věcně správný (správný matematický vztah) musí být jednoznačný (každý krok musí být jasný) musí být obecný (řešení nejširšího množství úloh) musí být opakovatelný (lze kdykoli zopakovat) musí být srozumitelný (pochopitelný pro programátora) 3 ZAČÁTEK A KONEC ALGORITMU I:=0 Čti: A, B Čti: A, B C:= A + B C:= A + B Vypiš: C Vypiš: C I:=I+1 I = 5 špatný algoritmus opakuje neustále stejné kroky nebo zatuhne nebo systém havaruje z důvodu přetečení paměti 4 2

VĚCNÁ SPRÁVNOST PLOCHA OBDÉLNÍKU Čti: A, B Čti: A, B S:= 2A + B S:= A * B Vypiš: S Vypiš: S špatný algoritmus poskytuje nesprávné výsledky, program zdánlivě pracuje správně; většinou chyba ve vzorci (zlomky a odmocniny) 5 JEDNOZNAČNOST Bude hezky? půjdu do kina půjdu na výlet půjdu do kina půjdu na výlet další chyby: - dělení nulou - chybějící větev v podmínce špatný algoritmus poskytuje v některých případech správné výsledky, v jiných případech havaruje nebo poskytuje nesprávné výsledky 6 3

OBECNOST 2:= 1 + 1 Vypiš: výsledek Čti: A, B C:= A + B Vypiš: C algoritmus musí být co nejobecnější, aby bylo možno pomocí něj řešit co nejširší množství úloh 7 OPAKOVATELNOST Čti: A, B Čti: A, B X:= 7 C:= X*A + B C:= X*A + B Vypiš: C Vypiš: C algoritmus lze kdykoli zopakovat a při stejných podmínkách se bude chovat stejně (při stejných vstupech stejný výstup) 8 4

SROZUMITELNOST Každý algoritmus musí být natolik srozumitelný, aby mu rozuměl programátor, který bude dle něho vytvářet aplikaci a samozřejmě i sám tvůrce, který bude schopen na základě přání uživatele algoritmus (postup) upravit. Pro zápis algoritmu se proto volí přehledná a srozumitelná metoda. Používání komentářů v dostatečné míře Všechny použité proměnné řádně popsat a vysvětlit jejich význam 9 ZÁPIS ALGORITMŮ SLOVNÍ VYJÁDŘENÍ (recept, školní řád, smlouva) domluva i s laikem když není jiná možnost nejméně přehledná nelze uhlídat zda je algoritmus jednoznačný a přesný MATEMATICKÝ ZÁPIS (vzoreček, rovnice) je jednoznačný (nutná znalost úpravy matem. výrazů) většinou málo podrobný (většinou nelze přímo zadat počítači podmínky řešitelnosti) x 1,2 b ± = 2 b 4ac 2a 10 5

ZÁPIS ALGORITMŮ ROZHODOVACÍ TABULKY (rozvrh, výpočet daně) zápis jednoznačný, přehledný a pochopitelný vhodný pro více možností každé řešení zvlášť nehodí se vždy někdy nutno delší vysvětlování základ daně od základ daně do daň ze základu přesahující 0 121 200 12% 121 200 218 400 14 544 + 19% 121 200 218 400 331 200 33 012 + 25% 218 400 331 200 a více 61 212 + 32% 331 200 11 ZÁPIS ALGORITMŮ POČÍTAČOVÉ PROGRAMY jediná forma srozumitelná pro člověka (programátor) a počítač (nutno kompilovat do strojového kódu) rozumí pouze programátor (znalost programovacího jazyka) málo názorná a přehledná (kombinuje se z vývoj. diagramem) VÝVOJOVÉ DIAGRAMY (schémata) symbolický programovací jazyk pro názorné zobrazení algoritmu nejdokonalejší forma zápisu používá se při vývoji SW komunikace mezi programátory a analytiky dokumentační účely nutná znalost jednotlivých symbolů 12 6

ZNAČKY VÝVOJOVÝCH DIAGRAMŮ Mezní značky Začátek (vystupuje pouze jedna hrana) Konec (vstupuje pouze jedna hrana) Sekvenční bloky Zpracování (příkazy sečtení, vynásobení, jiná matematická nebo logická operace) Může být zapsáno i více instrukcí 13 ZNAČKY VÝVOJOVÝCH DIAGRAMŮ Sekvenční bloky Vstup (načtení potřebných dat; obsahuje text: Čti:) Výstup (zobrazení výstupů programu na zobrazovací zařízení; obsahuje text: Zobraz:) Rozhodovací blok Podmínka (k rozvětvení programu na základě podmínky) 14 7

SEKVENCE Sekvence je nejjednodušším typem algoritmu, který se skládá pouze ze sekvenčních bloků. Během sekvence nesmí docházet k větvení ani k cyklům (opakování). Příklady: Obdélník obvod a obsah Obvod kružnice a obsah kruhu Rovnostranný trojúhelník obvod a obsah Součet, rozdíl a součin POZOR na podíl a odmocninu (nutnost ošetření vstupů) nutnost větvení- NENÍ sekvence 15 SOUČET OBSAHU DVOU BUNĚK, PŘIŘAZENÍ C:= A + B sklenice A sklenice B sklenice C A:= A + B sklenice A sklenice B sklenice A 16 8

VÝMĚNA PROMĚNNÝCH - PROHOZENÍ Jak vyměnit obsah sklenic A a B? krok 2 krok 1 krok1 C:= B krok 2 B:=A krok 3 A:=C krok 3 sklenice A sklenice B sklenice C 17 SEKVENČNÍ ALGORITMY ÚKOL Sestavte algoritmus pro výpočet obvodu a obsahu kruhu 18 9

LOGICKÝ SOUČIN A SOUČET Výrok A Výrok B A AND B A OR B 1 1 1 1 1 0 0 1 0 1 0 1 0 0 0 0 OR AND 19 LOGICKÉ FUNKCE Logický součin (A AND B) A půjde na rande dívka (ANO NE) B půjde na rande chlapec (ANO NE) A AND B rande se uskuteční (ANO NE) Výrok A Výrok B A AND B 1 1 1 1 0 0 0 1 0 0 0 0 20 10

LOGICKÉ FUNKCE Logický součet (A OR B) A první posel doručí zprávu (ANO NE) B druhý posel doručí zprávu (ANO NE) A OR B zpráva bude doručena (ANO NE) Výrok A Výrok B A OR B 1 1 1 1 0 1 0 1 1 0 0 0 21 ÚKOLY Součet dvou proměnných, přiřazovací příkaz Výměna obsahu dvou proměnných (prohození) Obvod kružnice a obsah kruhu Obvod a obsah šestiúhelníka 22 11

ALGORITMY VĚTVENÍ Čti: A, B ÚKOL Sestavte algoritmus pro výpočet podílu dvou čísel A,B B = 0 C:= A / B Zobraz: Dělení nulou!! Vypiš: C 23 ÚKOLY Dělení výrazů ( A + B děleno C+D) Trojúhelníková nerovnost Druhá odmocnina Libovolná odmocnina Absolutní hodnota čísla A Číslo kladné, záporné či nula? Číslo sudé či liché? Dělitelnost čísla libovolným číslem Porovnání čísel a zobrazení dle velikosti Seřazení dvou čísel (pomocná proměnná prohození) 24 12

ÚKOLY Největší ze tří čísel (bez a s pomocnou proměnnou) Největší ze tří čísel (s dočasným maximem) Seřazení tří čísel dle velikosti (bez a s pomocnou prom.) Trojúhelník rovnostranný, rovnoramenný a obecný Pravoúhlý trojúhelník (Pythagorova věta) Lineární rovnice Soustava dvou lineárních rovnic Kvadratická rovnice s reálnými kořeny Jednoduchá kalkulačka (+, -, *, /) Rychlost, dráha, čas Srážka vlaků (S, V1, V2) 25 ALGORITMY CYKLŮ s pevným počtem opakování ÚKOL Vypiš čísla od 1 do 20 cyklus I:= 1 to 20 Vypiš: I cyklu 26 13

ÚKOLY Čísla od 2 do 20 jen sudá (bez a s krokem) Suma čísel od 1 do 30, resp. suma čísel od X do Y Suma 10 různých čísel resp. libovolného počtu čísel Největší z 10 kladných čísel (pomocí dočasného maxima) Max a Min z celých čísel; počet bude znám předem (Max položte -32768 a Min položte +32767) Počet kladných a záporných čísel z daného počtu Součin pomocí součtu (A*B = A+A+A+ +A) Aritmetická řada (první prvek a diference) Součet aritmetické řady (první prvek, diference, počet prvků) Geometrická řada (první prvek a kvocient) Faktoriál Složené úrokování s pravidelnou měsíční úložkou 27 ALGORITMY CYKLŮ s podmínečným opakování podmínka instrukce instrukce podmínka Cyklus s podmínkou na začátku Cyklus s podmínkou na konci Vytvoříte-li věcně správný algoritmus a podmínka bude uprostřed, pak upravit algoritmus podmínka na začátku/konci vždy to jde!!! 28 14

ALGORITMY CYKLŮ s podmínečným opakování Suma čísel, jejichž počet není předem znám SUMA:=0 SUMA:=0 SUMA:=0 Čti: X Čti: X X:=0 X = -1 X <> -1 Čti: X SUMA:=SUMA +X Zobraz: X SUMA:=SUMA +X Zobraz: X SUMA:=SUMA +X Čti: X X <> -1 Zobraz: X test cyklu uprostřed test cyklu na začátku test cyklu na konci 29 ÚKOLY Paralelní odpory (ukončení na dotaz) Suma libovolného počtu kladných čísel ( při -1) Maximum z neznámého počtu čísel ( při -1) Kolik čísel kladných a kolik záporných ( při -1) NSD největší společný dělitel (postupné odčítání) Součet číslic v čísle Převod z desítkové do binární soustavy Restaurace ( při řetězci platím ) 30 15

TŘÍDÍCÍ ALGORITMY načtená data musí být před tříděním uložena v paměti či na disku ke každé položce se několikrát vrací požadavky na algoritmus: složitost nároky na paměť rychlost počet porovnávání typy algoritmu Select Sort třídění přímým výběrem Bubble Sort třídění probubláváním Shake Sort třídění přetřásáním 31 16