M2160 – Úvod do programování II RNDr. Jaroslav PELIKÁN, Ph.D. katedra počítačových systémů a komunikací Fakulta informatiky Masarykovy univerzity Botanická.

Slides:



Advertisements
Podobné prezentace
Přednáška 10 Určitý integrál
Advertisements

Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
ŘÍDÍCÍ STRUKTURY - PODMÍNKY
Programování 2 Cvičení 5.
1 Vnitřní řazení s využitím dynamických struktur Tvorba spojového seznamu je vcelku triviální záležitostí: a)Vytvořím prázdný seznam příkazem LIST:=nil.
10. Dynamické datové struktury
Fronta - a)Implementace s využitím statických struktur (pole) b)Implementace s využitím dynamických struktur (spojového seznamu) odebírá se ze začátku.
Programování v Pascalu Přednáška 10 RNDr. Hana Havelková.
Programování v Pascalu Přednáška 3
Programování v Pascalu Přednáška 5 RNDr. Hana Havelková.
Programování v Pascalu Přednáška 9 RNDr. Hana Havelková.
Algoritmizace a programování Datové typy v Delphi - 05
Algoritmizace a programování Podprogramy v Delphi - 10
Programování v Pascalu Přednáška 7
Materiály k přednášce Úvod do programování Ondřej Čepek.
Algoritmizace a programování
Algoritmizace a programování Podmíněné a cyklické příkazy- 08
Informatika I 3. přednáška
Jazyk vývojových diagramů
Procedury a funkce Základní charakteristika a použití v programu.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Vyučovací hodina 1 vyučovací hodina: Opakování z minulé hodiny 5 min Nová látka 20 min Procvičení nové látky 15 min Shrnutí 5 min 2 vyučovací hodiny: Opakování.
Fakulta životního prostředí Katedra informatiky a geoinformatiky
A1PRG - Programování – Seminář Ing. Michal Operátory (2. část) 4 Verze
Algoritmy a programovací techniky
Informatika pro ekonomy II přednáška 10
Informatika I 4. přednáška
3. Příkazy  Příkazy dělíme na jednoduché a strukturované.  Jednoduché příkazy - žádnou jejich dílčí částí neni příkaz - přiřazovací, vstupu a výstupu,
Informatika I 7. přednáška RNDr. Jiří Dvořák, CSc.
Informatika I 8. přednáška RNDr. Jiří Dvořák, CSc.
Datové typy a struktury
Programovací jazyk PASCAL
Algoritmizace a programování Binární soubory - 14 Mgr. Josef Nožička IKT Algoritmizace a programování
Informatika I 1. přednáška
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
STROMY Datová struktura sestávající z uzlů
10. Dynamické proměnné Dynamická proměnná se nezavádí deklarací proměnných, ale vzniká za běhu programu provedením speciálního příkazu. Nemá přidělen žádný.
7. Typ soubor Souborem dat běžně rozumíme uspořádanou množinu dat, uloženou mimo operační paměť počítače (na disku). Pascalský soubor je abstrakcí skutečného.
Databázové modelování
doc. RNDr. Zdeněk Botek, CSc.
Databázové systémy Informatika pro ekonomy, př. 18.
XQuery Dotazovací jazyk XML Daniel Privalenkov. O čem bude prezentace Nutnost dotazovacího jazyku v XML Rychlý přehled XQuery Několik příkladů.
Počítače a programování 1 7.přednáška. Základy Pole ve třídách a metodách Pole Arrays.
Inovace a zkvalitnění výuky prostřednictvím ICT
M1160 – Úvod do programování I
6. Typ záznam Strukturovaný datový typ - znamená spojení několika elementů stejného nebo různých typů do jedné proměnné. Např. pole je strukturovaný datový.
doc. RNDr. Zdeněk Botek, CSc.
doc. RNDr. Zdeněk Botek, CSc.
doc. RNDr. Zdeněk Botek, CSc.
4. Typ pole 4.1 Jednorozměrná pole
doc. RNDr. Zdeněk Botek, CSc.
Vícerozměrná pole (1) Jazyk C povoluje, aby pole mělo více rozměrů (dimenzí) než jeden Z vícerozměrných polí bývá nejčastěji použí-váno pole dvourozměrné.
ALGORITMIZACE A ZÁKLADY PROGRAMOVÁNÍ
doc. RNDr. Zdeněk Botek, CSc.
doc. RNDr. Zdeněk Botek, CSc.
Úvod do programování2 Vyučující: Mgr. Vítězslav Jersák Web: xjv.webnode.cz.
Pascal - větvení.
Cvičení 3-4 Procedury, funkce,řetězce. Procedury Procedura Procedura Procedura je podprogram, který mění stav programu (změnou stavu proměnných nebo změnou.
Informatika (1) Počítač - základní pojmy HW a SW4 OS MS-DOS, Windows 95, 982 Org. souborů na disku, operační paměť2 Aplikace Malování, Word8 Základy programování.
Tento projekt je financován z Operačního programu Vzdělávání pro konkurenceschopnost prostřednictvím Evropského sociálního fondu a státního rozpočtu ČR.
PROGRAMOVÁNÍ 3ITA,3ITB Jaroslav Burdys Hlavní zdroj:
MNOŽINY RNDr. Jiří Kocourek. Množina: skupina (souhrn, soubor) nějakých objektů.
M2160 – Úvod do programování II
Vícerozměrná pole (1) Jazyk C povoluje, aby pole mělo více rozměrů (dimenzí) než jeden Z vícerozměrných polí bývá nejčastěji použí-váno pole dvourozměrné.
Strukturované typy proměnných v programovacím jazyce Pascal - 1.hodina
Uživatelem definované datové typy
Programovací jazyk C Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Jitka Vlčková. Dostupné z Metodického portálu ISSN.
Informatika pro ekonomy přednáška 8
Opakování základních příkazů a syntaxí v programovacím jazyce Pascal
IB999 Vstupní test z programování
Transkript prezentace:

M2160 – Úvod do programování II RNDr. Jaroslav PELIKÁN, Ph.D. katedra počítačových systémů a komunikací Fakulta informatiky Masarykovy univerzity Botanická 68a, BRNO Kanc.: A209,  : +420 –

28/09/20162 Organizace předmětu Předmět M2160 má hodinovou dotaci 2/2, tj. 2 hodiny přednáška a 2 hodiny cvičení Rozvrh hodin: –1 přednáška: pátek 10:00 – 11:50 (C525) –1 cvičební skupina: čtvrtek 14:00 – 15:50 (A215) Předmět je ukončen kolokviem

28/09/20163 Požadavky ke kolokviu Zápočet: –„úspěšné“ napsání průběžných písemek –splnění všech domácích úkolů (v termínu) –maximálně dvě neomluvené neúčasti na cvičení Zápočet musí být zapsán na ISu nejpozději 12 hodin před začátkem kolokvia Kolokvium probíhá ve dvou částech: –vypracování programu (na počítači): 90 minut –diskuse nad řešeným problémem + další otázky

28/09/20164 Osnova (1) Datový typ množina Datový typ záznam, příkaz with Datový typ soubor: –typový soubor –textový soubor Datový typ ukazatel: –dynamické proměnné –dynamické datové struktury Vyhodnocování aritmetického výrazu

28/09/20165 Osnova (2) Programové jednotky (units) Předávání parametrů z příkazové řádky OS Příkazy Goto, Break, Continue, Exit, Halt Složitost algoritmů Úvod do objektově orientovaného progra- mování Vývojové prostředí Borland Delphi: –vývoj programů v prostředí MS-Windows Kolokvium

28/09/20166 Literatura (1) Pelikán, Jaroslav: Prezentace k přednáškám z předmětu M2160 Úvod do programování II Borland Pascal 7.0 manuál, Borland International, 1992 Hála, Tomáš: Učebnice Pascalu, Computer Press 2002 Drózd, Januš – Kryl, Rudolf: Začínáme s programováním, Praha: Grada 1992

28/09/20167 Literatura (2) Wirth Niklaus: Algoritmy a štruktúry údajov: Algorithm + Data Structures = Programs, Bratislava Alfa, 1989 Teixeira, S. – Pacheco, X.: Mistrovství v Delphi 6, Computer Press 2002 Lischner, R.: Delphi v kostce, Computer Press 2000

28/09/20168 Typ množina (set) (1) Definice typu množina je tvaru: type T = set of T z ; kde T: jméno nově definovaného typu množina T z : označení ordinálního typu (identifikátor nebo popis typu), kterému se říká bázový typ Hodnotami proměnných typu T jsou všechny podmnožiny bázového typu T z a prázdná množina

28/09/20169 Typ množina (set) (2) Např.: type zakladnibarva = (cervena, zelena, modra); barva = set of zakladnibarva; –Hodnotami proměnných typu barva jsou: [cervena, zelena, modra], [cervena, zelena], [cervena, modra], [zelena, modra], [cervena], [zelena], [modra], []

28/09/ Typ množina (set) (3) Konstrukce hodnoty množina spočívá ve výčtu množinových elementů, které jsou odděleny čárkami a uzavřeny do hranatých závorek Elementy mohou být dány výrazem bázové- ho typu nebo ve tvaru m..n, který představu- je množinu všech prvků i bázového typu takových, že m  i  n

28/09/ Typ množina (set) (4) [] je prázdná množina stejně jako [m..n], kde m > n. Příklady: [6], [i+j, i–j], [’0’..’9’], [’a’, ’b’, ’c’] Operátory aplikovatelné na operandy typu množina s kompatibilními bázovými typy: + sjednocení

28/09/ Typ množina (set) (5) * průnik – množinový rozdíl =, test na rovnost (nerovnost) =, test na, množinovou inkluzi intest na příslušnost k množině Příklad: if (ch = ’a’) or (ch = ’e’) or (ch = ’i’) or (ch = ’o’) or (ch = ’u’) or (ch = ’y’) then P;

28/09/ Typ množina (set) (6) lze nahradit: if ch in [ ’a’, ’e’, ’i’, ’o’, ’u’, ’y’] then P; Implementace Pascalu obvykle omezují rozsah bázového typu množina v závislosti na délce posloupností z 0 a 1, kterými jsou reprezentovány množiny Díky této reprezentaci však mohou probíhat množinové operace velmi rychle

28/09/ Typ množina (set) (7) Omezení Free Pascalu: –bázový typ nesmí mít více než 256 hodnot –ordinální hodnoty dolní a horní meze bázového typu musí ležet uvnitř intervalu Poznámka: Množina je statický a homogenní datový typ

28/09/ Typ záznam (record) (1) Hodnoty typu záznam jsou tvořeny složka- mi různých typů  záznam je heterogenní datový typ Tyto složky (jejich počet a typ) jsou pevně dány definicí typu záznam, popř. deklarací proměnné typu záznam  záznam je statický datový typ

28/09/ Typ záznam (record) (2) Typ záznam definujeme takto: type T = record p 11, p 12,..., p 1n 1 : T 1 ; p 21, p 22,..., p 2n 2 : T 2 ; p m1, p m2,..., p mn m : T m ; end;

28/09/ Typ záznam (record) (3) p ij značí identifikátory složek, kterým se říká položky Položky záznamu mohou být dále strukturovaného typu (např. pole, množina nebo opět záznam)

28/09/ Typ záznam (record) (4) Příklad: na základě definic typů: type den = 1..31; mesic = (leden, unor, brezen, duben, kveten, cerven, cervenec, srpen, zari, rijen, listopad, prosinec); rok = ;

28/09/ Typ záznam (record) (5) můžeme definovat typ: datum = record d: den; m: mesic; r: rok; end;

28/09/ Typ záznam (record) (6) Výběr položky (přístup k položce) záznamu se realizuje zápisem, který je tvořen identifikátorem záznamu následovaným tečkou a identifikátorem příslušné položky Je-li proměnná deklarována jako: var prijezd:datum; pak se její složky označují: prijezd.d, prijezd.m, prijezd.r

28/09/ Typ záznam (record) (7) Změna hodnoty proměnné se realizuje změnou jednotlivých položek: Např.: if prijezd.m prosinec then prijezd.m := succ (prijezd.m) else begin prijezd.m := leden; prijezd.r := prijezd.r+1; end;

28/09/ Typ záznam (record) (8) Typ záznam může mít i tzv. variantní část: type typvoz = (autobus, naklauto); Vozidlo = record cena:longint; case TV:typvoz of autobus: (pocosob:integer); naklauto: (nosnost: integer); end;

28/09/ Příkaz with (1) Slouží ke zjednodušení přístupu k položkám proměnných typu záznam Obecný tvar: with p 1, p 2,..., p n do P; kde p i : proměnná typu záznam P: příkaz, v jehož rámci je možné praco- vat přímo s položkou záznamu, aniž bychom museli uvádět proměnnou typu záznam následovanou tečkou

28/09/ Příkaz with (2) Příklad: with prijezd do if m prosinec then m := succ (m) else begin m := leden; r := r+1; end;