Sada 1 - Základy programování



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

Ekonomika Společnost s ručením omezeným

Algoritmizace a programování

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

Sada 3 CAD3. 3. CADKON DT+ Vynášení stěn

Sada 2 - MS Office, Excel

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

Programování 2 (NMIN102) Soubory. RNDr. Michal Žemlička, Ph.D.

Sada 2 Microsoft Word 2007

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

Zakládání staveb. 18. ZÁKLADY výpočet návrh základového pasu

Sada 2 Dřevěné a ocelové konstrukce

Sada 1 - Základy programování

NPRG030 Programování I, 2010/11

Sada 1 - Základy programování

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

Sada 2 Microsoft Word 2007

Sada 2 - MS Office, Excel

MS Word 2007 REVIZE DOKUMENTU A KOMENTÁŘE

Sada 2 Microsoft Word 2007

Sada 2 - MS Office, Excel

Sada 1 - Základy programování

Sada 1 Geodezie I. 06. Přímé měření délek pásmem

Výukový materiál zpracovaný v rámci operačního programu Vzdělávání pro konkurenceschopnost

Sada 2 Dřevěné a ocelové konstrukce

Sada 1 CAD Registrace studentů a učitelů středních škol pro účely stažení legálního výukového SW firmy Autodesk

Inovace výuky prostřednictvím šablon pro SŠ

O datových typech a jejich kontrole

Matrika otázky a odpovědi Vidimace částečné listiny. Ing. Markéta Hofschneiderová Eva Vepřková

Algoritmizace a programování

Anotace. Informace o praktiku z programování!!! Direktivy překladače Soubory (textové) Quicksort Metoda rozděl a panuj

Sada 2 Stavební provoz

SOUHRNNÝ PŘEHLED nově vytvořených / inovovaných materiálů v sadě

Sada 1 - Základy programování

Sada 1 - Elektrotechnika

Business Contact Manager Správa kontaktů pro tisk štítků

Sada 1 - Základy programování

Lineární algebra. Vektorové prostory

Poruchy modul pro rychlé hlášení poruch z provozu.

NÁZEV ŠKOLY: Střední odborné učiliště, Domažlice, Prokopa Velikého 640. V/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Želva se nachází v tzv. grafickém okně (zviditelníme ji klávesou +), v němž jsou vidět i čáry, které nakreslila.

Střední průmyslová škola a Vyšší odborná škola technická Brno, Sokolská 1. Podpora digitalizace a využití ICT na SPŠ CZ.1.07/1.5.00/34.

Sada 2 Geodezie II. 18. Státní mapy

Novinky verze ArCon 14 Small Business

Modul: Cvičebnice programování ISO - soustruh

Inovace a zkvalitnění výuky prostřednictvím ICT VY_32_INOVACE_ INF.5.61 až 80

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

STŘECHY ŠIKMÉ. 06. Typy šikmých střech. Digitální učební materiál projektu: SŠS Jihlava - šablony

Výrazy lze též zavést v nečíselných oborech, pak konstanty označuji jeden určitý prvek a obor proměnné není množina čísel.

SILNIČNÍ DAŇ U OSOBNÍCH AUTOMOBILŮ

Sada 2 Matematika. 19. Logaritmy

DMX512 PC Control Stručný návod k použití programu Verze 1.0 Copyright 2007 Dokumentace: Ing. Jaroslav Nušl

Karty externích médií

Sada 2 CAD2. 9. CADKON 2D 2011 Překlady

Tvořivá škola, registrační číslo projektu CZ.1.07/1.4.00/ Základní škola Ruda nad Moravou, okres Šumperk, Sportovní 300, Ruda nad

Sada 1 Technologie betonu

Gymnázium, Praha 10, Voděradská 2 Projekt OBZORY

POČÍTAČE A PROGRAMOVÁNÍ

Karty externích médií Uživatelská příručka

VY_52_INOVACE_2NOV70. Autor: Mgr. Jakub Novák. Datum: Ročník: 8. a 9.

Ekonomika Ochranné prvky bankovek ČR

Uložené procedury Úvod ulehčit správu zabezpečení rychleji

Ozobot aktivita lov velikonočních vajíček

Sada 1 Technologie betonu

Příručka pro práci s dataloggerem Labquest 2. Zapínání a domácí obrazovka

Ekonomika Akciová společnost

Stavební technologie

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace

Rostislav Horčík. 13. října 2006

Téma: Zemní práce III POS 1

Soubory a databáze. Soubor označuje množinu dat, která jsou kompletní k určitému zpracování a popisují vybrané vlastnosti reálných objektů

Obec Štědrá. Zřizovací listina

ZÁKLADNÍ PRINCIPY ÚČTOVÁNÍ DPH

Digitální učební materiál

Hřídelové čepy. Podle tvaru, funkce a použití rozeznáváme hřídelové čepy: a) válcové b) kuželové c) prstencové d) kulové e) patní

Sada 2 CAD CADKON 2D 2011 Nosníkový strop

INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ. Výukový materiál zpracován v rámci projektu EU peníze školám. Registrační číslo projektu: CZ.1.07/1.5.00/34.

Pokusy s kolem na hřídeli (experimenty s výpočty)

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

Digitální učební materiál

Novinky v programu Majetek 2.06

Binární soubory (datové, typované)

Sada 2 Geodezie II. 11. Určování ploch z map a plánů

Funkce Vypracovala: Mgr. Zuzana Kopečková

Zvyšování kvality výuky technických oborů

Sada 2 Klempířská technologie 31. Svařování plamenem I.

Sada 1 Dřevěná okna a dveře

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT. Cyklus while, do-while, dělitelnost, Euklidův algoritmus

Zvyšování kvality výuky technických oborů

SEZNAM PŘÍLOH. Příloha č. 1 Dohoda o individuální hmotné odpovědnosti podle 252 zákoníku práce 114

Protokol o výběru dodavatele

Ekonomika Základní ekonomické pojmy

Výukový materiál zpracovaný v rámci projektu Výuka moderně

Pokyn pro příjemce dotace

Anotace. Dijkstrův algoritmus,

Struktury a obsah výstupních zpráv pro MultiCash ČSOB

Zvyšování kvality výuky technických oborů

DUM téma: Výklad k sadě

Sada 2 Dřevěné a ocelové konstrukce

ICT podporuje moderní způsoby výuky CZ.1.07/1.5.00/ Český jazyk jazykové rozbory. Mgr. Jana Hlaváčová

Transkript:

S třední škola stavební Jihlava Sada 1 - Základy programování 16. Vstup a výstup do souboru 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

Práce se soubory soubor se v jazyce Pascal skládá z posloupnosti složek stejného typu typ souboru musí být znám před vstupní/výstupní operací deklarace souboru musí být provedena před jeho prvním použitím. Soubory lze rozdělit do tří skupin: textové soubory soubory s udaným typem (typové soubory) soubory bez udaného typu (netypové soubory)

Práce se soubory proměnná typu soubor se deklaruje podobně jako ostatní proměnné v programu: var File1 : file of byte; { typové soubory } File2 : file of integer; File3 : text; { textový soubor } File4 : file; { netypový soubor }

Práce se soubory před použitím proměnné typu soubor v programu musíme přiřadit jméno vlastnímu souboru pomocí procedury Assign je-li proměnná přiřazena souboru, musí se otevřít, aby se připravila pro vstupní/výstupní operace se souborem pokud soubor již existuje, můžeme jej otevřít procedurou Reset nový soubor můžeme vytvořit a otevřít procedurou Rewrite soubor, který existuje, můžeme otevřít v režimu pouze pro zápis procedurou Append

Práce se soubory s textovým soubor, otevřeným procedurou Reset, může pracovat pouze v režimu pro čtení do textových souborů otevřených do textových souborů otevřených procedurami Rewrite a Append můžeme pouze zapisovat

procedura / funkce Význam Assign Append Close Read ReadLn Rename Reset Rewrite Write WriteLn Eof EoLn IOResult Práce se soubory Přiřadí jméno externího souboru proměnné typu soubor Otevře existující soubor pro vkládání Uzavře otevřený soubor Načte jednu nebo více hodnot ze souboru do jedné nebo více proměnných Totéž co Read, ale až po sekvenci CRLF (přečte celý řádek) Přejmenuje externí soubor Otevře existující soubor Vytvoří a otevře nový externí soubor Zapíše jednu nebo více hodnot do souboru Totéž co Write a zápis ukončí sekvencí CRLF (odřádkuje) Zjistí stav konce souboru Zjistí stav konce řádku v textovém souboru Vyhodnotí správnost vstupní/výstupní operace

Práce se soubory textový soubor Textový soubor je definován jako sekvence znaků v řádkovém formátu každý řádek je ukončen znakem konce řádku, po každý řádek je ukončen znakem konce řádku, po kterém může následovat znak posunu na další řádek (CRLF => carriage-return, line-feed)

Práce se soubory textový soubor vytvoření nového textového souboru se zápisem textu: program Vytvor_Textovy_Soubor; var F : text; Assign(F, I:\Text.txt ); { prirazeni nazvu } Rewrite(F); { otevreni } WriteLn(F, Zapisuji do souboru. ); { zapis } WriteLn(F, Konec. ); { zapis } Close(F); { uzavreni } end.

Práce se soubory textový soubor čtení ze souboru: program Nacti_Text; var F : text; { promenna typu textovy soubor} Line : string[255]; { pro ulozeni jednoho radku } I : integer; { citac jednotlivych radku } Assign(F, Text.txt ); { otevreni } Reset(F); { otevreni } I := 1; { nastaveni proměnné I na 1 } while not (Eof(F)) do { cyklus s podmínkou na začátku} { podmínkou je konec souboru (EOF)} ReadLn(F, Line); { cteni radku} WriteLn(I,, Line); { zobrazeni prectene informace } I := I+1; { zvýšení poř.cisla rádku } end; Close(F); { uzavreni souboru } end.

Práce se soubory- program upravte program tak, aby pracoval s textovým souborem použijte pevnou šířku sloupců dle vlastního uvážení 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.

Práce se soubory typový soubor v typových souborech je znám typ složky složku typového souboru může tvořit libovolný jednoduchý (standardní), nebo strukturovaný (uživatelský) typ

Práce se soubory - typový soubor program Knihovna; type kniha = record Nazev : string[60]; Autor : string[20]; Rok : word; Nakladatel : string[10]; end; var F : file of kniha; Zaznam : kniha; I : integer;

Práce se soubory typový soubor procedure MakeFile; end; Assign(F, Knihovna.dbf ); Rewrite(F); if IOResult <> 0 then Halt; {Halt = stop - ukončí běh programu}

Práce se soubory typový soubor procedure ReadRecordKbd; with Zaznam do Write ( Nazev knihy : ); Readln(Nazev); Write ( Autor : ); Readln(Autor); Write ( Rok vydani : ); Readln(Rok); Write ( Vydavatel : ); Readln(Nakladatel); end; end;

Práce se soubory typový soubor end. MakeFile; I := 1; while I <= 10 do; ReadRecordKbd; Write(F, Zaznam); if IOResult = 0 then end; Close(F); else I := I+1 Close(F); Halt; end;

Práce se soubory typový soubor program vytvoří nový typový soubor, v němž je každá položka datového typu záznam, který je nadeklarováns názvem Kniha procedura MakeFilevytvoří na disku nový soubor a otevře jej pro zápis. Nejde-li soubor otevřít, běh programu se zastaví procedura ReadRecordKbdumožňuje zadání každé jednotlivé složky souboru z klávesnice v cyklus whilese počítají vložené záznamy a přestane se provádět po vložení desátého záznamu po vložení každého záznamu do souboru se provádí test správnosti V/V operace pokud dojde při zápisu k chybě, soubor se uzavře a program skončí

Práce se soubory bez udaného typu soubory bez udaného typu se používají pro přístup k libovolnému diskovému souboru bez ohledu na jeho typ a jeho strukturu soubor bez uvedeného typu se deklaruje: Var UnTypedFile : file; při jejich otevírání lze definovat délku záznamu, pokud definici neprovedeme, nastaví se výchozí délka záznamu 128 byte

Práce se soubory bez udaného typu délku záznamu lze definovat jako druhý parametr procedur Reset nebo Rewrite: Reset(UnTypedFile, 256); Rewrite(UnTypedFile, 256); jsou pro ně přístupné všechny standardní procedury a funkce kromě Reada Write, místo nich se k rychlému přenosu dat používají speciální procedury BlockRead a BlockWrite, které pracují s definovaným záznamem, jehož velikost byla určena při otevření souboru

Práce se soubory bez udaného typu využívá se například pro zjištění existence souboru libovolného typu na disku: Type S : string[80]; function FileExist(Name : S) : boolean; Var F : file; Assign(F, Name); Reset(F); if IOResult = 0 then Close(F); FileExist := True; end else FileExist := False; end;

Práce se soubory bez udaného typu test existence se provádí otevřením souboru a následnou kontrolou správnosti V/V operace pokud byl soubor otevřen, funkce IOResult vrací nulovou hodnotu, a proto funkce FileExistbude vracet hodnotu True, v opačném případě vrací hodnotu False

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.