Sada 1 - Základy programování

Podobné dokumenty
Sada 1 - Základy programování

Sada 1 - Základy programování

Sada 1 - Základy programování

Sada 1 - Základy programování

Sada 1 - Základy programování

Sada 1 - Základy programování

Sada 1 - Základy programování

Sada 1 - Základy programování

Sada 2 - MS Office, Excel

Sada 2 Microsoft Word 2007

Sada 2 Microsoft Word 2007

Sada 2 Microsoft Word 2007

Sada 1 - Základy programování

Sada 2 Microsoft Word 2007

Sada 1 - PHP. 03. Proměnné, konstanty

Sada 2 Microsoft Word 2007

Programovací jazyk Pascal

Vyučovací hodina. 1vyučovací hodina: 2vyučovací hodiny: Opakování z minulé hodiny. Procvičení nové látky

2 Strukturované datové typy Pole Záznam Množina... 4

Sada 1 Matematika. 01. Množiny - úvod

Sada 1 CAD Písmo v AutoCADu

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

Sada 3 Inženýrské stavby

Sada 1 CAD Kótování kótovací styl

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

Sada 1 CAD Prostorové souřadnice v CAD systémech

Sada 2 Microsoft Word 2007

Sada 2 Stavební provoz

Sada 1 - Základy programování

Sada 1 - PHP. 09. Formuláře

Inovace a zkvalitnění výuky prostřednictvím ICT Základy programování a algoritmizace úloh Typové a netypové soubory

Sada 2 - MS Office, Excel

Sada 1 Geodezie I. 13. Měření vodorovných směrů

Sada 2 - MS Office, Excel

Sada 2 Microsoft Word 2007

Sada 1 Matematika. 04. Nekonečné řady

Sada 2 - MS Office, Excel

Sada 3 CAD3. 4. CADKON DT+ Okna

Sada 2 Microsoft Word 2007

Sada 1 CAD Stažení a instalace výukového SW firmy Autodesk

Sada 2 Stavební provoz

Název předmětu: Školní rok: Forma studia: Studijní obory: Ročník: Semestr: Typ předmětu: Rozsah a zakončení předmětu:

1 PRVOCISLA: KRATKY UKAZKOVY PRIKLAD NA DEMONSTRACI BALIKU WEB 1

Sada 2 Microsoft Word 2007

Ekonomika Veřejní obchodní společnost Komanditní společnost

Sada 3 CAD3. 6. CADKON DT+ Dveře

Sada 1 - PHP. 14. Úvod do jazyka SQL

Sada 1 - Elektrotechnika

Sada 1 - PHP. 05. Větvení

Digitální učební materiál

NPRG030 Programování I, 2017/18 1 / :22:16

Digitální učební materiál

Sada 1 Geodezie I. 05. Vytyčení kolmice a rovnoběžky

Sada 1 - PHP. 20. Obrázky z obrázků

Sada 2 Klempířská technologie

Sada 1 Matematika. 06. Finanční matematika - úvod

Příklady: (y + (sin(2*x) + 1)*2)/ /2 * 5 = 8.5 (1+3)/2 * 5 = /(2 * 5) = 1.3. Pavel Töpfer, 2017 Programování 1-3 1

Několik příkladů v Turbo Pascalu

NPRG030 Programování I, 2016/17 1 / :58:13

ZÁKLADY PROGRAMOVACÍHO JAZYKA TURBO PASCAL

STŘEDNÍ ŠKOLA STAVEBNÍ JIHLAVA

Sada 1 - Elektrotechnika

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

Pascal. Katedra aplikované kybernetiky. Ing. Miroslav Vavroušek. Verze 7

Sada 1 - PHP. 15. Výběr dat z databáze. Příkaz SELECT

Ekonomika Státní rozpočet

Sada 2 Geodezie II. 16. Měření posunů a přetvoření

NPRG030 Programování I, 2010/11

Sada 1 Klempířská technologie

Digitální učební materiál

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

Úvod do programování

Ekonomika Obchodní společnosti

Ekonomika Inflace

Sada 2 Geodezie II. 12. Výpočet kubatur

1.1 Struktura programu v Pascalu Vstup a výstup Operátory a některé matematické funkce 5

Sada 2 Geodezie II. 13. Základní vytyčovací prvky

Sada 1 - Elektrotechnika

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

Sada 2 - MS Office, Excel

Inovace a zkvalitnění výuky prostřednictvím ICT Základy programování a algoritmizace úloh Textové soubory

Test prvočíselnosti. Úkol: otestovat dané číslo N, zda je prvočíslem

2.1 Podmínka typu case Cykly Cyklus s podmínkou na začátku Cyklus s podmínkou na konci... 5

Sada 3 Inženýrské stavby

Sada 1 Geodezie I. 15. Podrobné měření polohopisné

Anotace. Soubory a práce s nimi, rekurze podruhé, struktury (datový typ record), Martin Pergel,

Sada 1 Geodezie I. 09. Nivelace pořadová, ze středu, plošná

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

Sada 1 Geodezie I. 04. Vytyčení přímky

Identifikátory označují objekty v programu používané (proměnné, typy, podprogramy).

Sada 2 Klempířská technologie 29.Krovy střech

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

Sada 1 Technologie betonu

Sada 1 Technologie betonu

Sada 3 Inženýrské stavby

Sada 1 - Ekonomika 3. ročník

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Inovace a zkvalitnění výuky prostřednictvím ICT Základy programování a algoritmizace úloh Jednoduché příkazy jazyka Pascal

Sada 2 Geodezie II. 02. Stabilizace bodů

Sada 1 - Ekonomika 3. ročník

Transkript:

S třední škola stavební Jihlava Sada 1 - Základy programování 14. Strukturované datové typy - pole, záznam, množina Digitální učební materiál projektu: SŠS Jihlava šablony registrační číslo projektu:cz.1.09/1.5.00/34.0284 Šablona: III/2 - inovace a zkvalitnění výuky prostřednictvím ICT Jaromír Železný 2013 Projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky

Datový typ záznam datový typ pole má všechny složky stejného základního datového typu => pro popis reálných objektů se nehodí -reálné objekty mají různý počet vlastností obvykle různých typů nejběžnější metodou vytváření strukturovaných datových typů je spojování libovolných prvků do složených typů, pro popis těchto objektů Pascal nabízí strukturovaný datový typ záznam příkladem může být osobní karta obsahující jméno, příjmení, datum narození, místo narození apod.

Datový typ záznam záznam je nehomogenní datová struktura skládající se z několika položek různého typu počet položek záznamu je předem neomezený, ale konečný jména a typy položek záznamu se deklarují popisem, který má obecný tvar : Record end; jméno položky1: typ1; jméno položky2: typ2;... jméno položkyn: typn;

Datový typ záznam Příklad deklarací typu záznam : TYPE Osoba = Record Jmeno : String[20]; Prijmeni : String[15]; Narozeni : Datum; Misto : String[25]; End; VAR Pracovnik : Osoba; Přístup k jednotlivým položkám proměnné typu záznam se provádí následovně: promenna-typu-zaznam. jmeno-polozky Například: writeln (Pracovnik.Jmeno); writeln (Pracovník.Misto); X:= Pracovník.Prijmeni;

Datový typ záznam napište program, který bude fungovat jako telefonní seznam např. 5 jmen osob a jejich telefonních čísel po spuštění bude uživatel vyzván, aby uvedl příjmení, jméno a telefonní číslo 5ti osob jméno, příjmení a telefonní číslo budou reprezentovány datovou strukturou záznam, jednotlivé záznamy vložíme do jednorozměrného pole program poté všechny osoby stelefonními čísly zobrazí na obrazovce

Datový typ záznam - program Program PraceSeZaznamem; Type Osoba = Record Prijmeni:String; Jmeno:String; Telefon:LongInt; end; Var Clovek:Array[1..5] of Osoba; I:Integer; Begin Writeln('Zadavej postupne jmena a telefonni cisla'); For I:=1 to 5 do Begin Writeln('Polozka c.', I); Write(' Zadej prijmeni ');Readln(Clovek[I].Prijmeni); Write(' Zadej jmeno ');Readln(Clovek[I].Jmeno); Write(' Zadej telefon ');Readln(Clovek[I].Telefon); Writeln; End; Writeln; Writeln('Vypis tefonniho seznamu:'); For I:=1 to 5 do Begin Write(I,'. ',Clovek[I].Prijmeni); Write(' ',Clovek[I].Jmeno); Writeln(' ',Clovek[I].Telefon); End; Readln; End.

Datový typ - množina strukturovaný datový typ množina se vytváří z prvků báze (základu), bázovým typem smí být pouze typ ordinální všechny možné kombinace prvků báze pak jsou hodnotami typu množina popis typu množina má tento obecný tvar: SET OF bázový typ; počet takových množin je: 2 n, kde n je počet prvků báze, v Pascalu může mít bázový typ maximálně 256 hodnot

Datový typ - množina Příklad množiny: type I = 1..3; {interval, ktery tvori bazi - zaklad mnoziny} mnozina = set of I; {typ mnozina s bazovym typem I} var m: mnozina; {promenna typu mnozina} j: I; pak proměnná jtypu Imůže nabývat hodnot: 1, 2 nebo 3, hodnotami proměnné m typu mnozina mohou být: [] prázdná množina [1],[2],[3] jednoprvkové množiny [1, 2], [2, 3], [1, 3] dvouprvkové množiny [1, 2, 3] tříprvková množina!!!!! Pozor: [1, 2] je totéž co [2, 1]!!!!!

Datový typ - množina konstrukce hodnoty typu množina (konstruktor množiny) spočívá ve výčtu množinových elementů, které jsou odděleny čárkami a uzavřeny do hranatých závorek elementy jsou dány výrazy bázového typu nebo ve tvaru n..m, který představuje množinu všech prvků i bázového typu takových, že n<=i<=m [] označuje prázdnou množinu Příklad: [],[i+j,i-j],[0..9],[1,3,5..9,45,89..87]!!! POZOR - zápis 89..87 je přípustný a obsahuje prázdnou množinu!!!

Datový typ - množina S hodnotami datového typu množina jsou přípustné tyto operace: 1) sjednocení množin a. předpisuje se operátorem + (plus) b. výsledkem sjednocení množin A + B je množina obsahující všechny prvky sjednocovaných množin 2) průnik množin a. předepisuje se operátorem * (krát) b. výsledkem průniku množin A * B je množina obsahující společné prvky obou množin 3) rozdíl množin a. předepisuje se operátorem (mínus) b. rozdílem množin A B je množina obsahující prvky množiny A, které nejsou obsaženy v množině B 4) relace a. A <= B množina A je podmnožinou (částí) množiny B b. A >= B množina B obsahuje množinu B (B je podmnožinou množiny A) c. A = B množina A je totožná s množinou B d. A <> B množina A není totožná s množinou B e. pro hodnotu X ordinálního typu a množinu A je definovárelace X in A, tj. X je prvkem množiny A

Datový typ - množina program Eratostenovo_sito; {urceni seznamu prvocisel bez pouziti nasobeni a deleni} uses crt; var sito, prvocisla: set of 1..255; i,dalsi, nasobek: word; begin clrscr; prvocisla:=[]; {inicializace promennych} sito:=[2..255]; dalsi:=2; repeat while not (dalsi in sito) do dalsi:=succ(dalsi); {moznost pridat dalsi prvocislo} prvocisla:=prvocisla+[dalsi]; {pridani prvocisla} nasobek:=dalsi; while nasobek <= 255 do {eliminace nasobku prvocisla} Begin sito:=sito - [nasobek]; nasobek:=nasobek + dalsi; end; until sito=[]; {opakovani dokud nebude sito prazdne} write('vypis prvocisel: '); for i:=1 to 255 do if i in prvocisla then write(i,' '); repeat until keypressed; End.

Zdroje: TurboPascal 6.0 - příručka uživatele (help) Literatura: Radek HYLMAR: Programování pro úplné začátečníky, Computer Press, Brno, 2009, ISBN 978-80-251-2129-0 Januš DRÓZD, Rudolf KRYL: Začínáme s programováním, GRADA a.s., Praha, 1992, ISBN 80-85424-41-X Tomáš HRUŠKA: Pascal pro začátečníky, SNTL, Praha 1989, ISBN 80-03-00345-8 Materiál je určen k bezplatnému používání pro potřeby výuky a vzdělávání na všech typech škol a školských zařízení. Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je : Jaromír Železný Pokud není uvedeno jinak, byly při tvorbě použity volně přístupné internetové zdroje. Autor souhlasí se sdílením vytvořených materiálů a jejich umístěním na www.ssstavji.cz.