Programowanie w języku Pascal

Podobne dokumenty
Wykład VII PASCAL - grafika;

P R OGRA M OW A N I E KOMPUTERÓW Ćwiczenia laboratoryjne. TEMAT 8: Moduły standardowe

Pascal - grafika. Uruchomienie trybu graficznego. Moduł graph. Domyślny tryb graficzny

Kod źródłowy programu: program Grafika1; uses crt, graph; (1) var sterownik, tryb:smallint; (2)

Programowanie w języku Pascal

Język programowania PASCAL

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

Programowanie w języku Pascal

Moduł graph w Pascalu

Pliki. Operacje na plikach w Pascalu

Wykład PASCAL - Pliki tekstowe

Wykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja, - liczby losowe

Programowanie w Turbo Pascal

PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy.

Programowanie w języku Python. Grażyna Koba

Wykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja cz. 1

INSTRUKCJA PUSTA. Nie składa się z żadnych znaków i symboli, niczego nie robi. for i := 1 to 10 do {tu nic nie ma};

Baltie 3. Podręcznik do nauki programowania dla klas I III gimnazjum. Tadeusz Sołtys, Bohumír Soukup

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

Okna i liczby pseudolosowe

Pascal. 1. Pliki tekstowe. Przykład 1.1. Zapis do pliku tekstowego

GRAFIKA PROGRAMOWANA W PASCALU ==================================

OPERACJE NA PLIKACH. Podstawowe pojęcia:

Pascal - wprowadzenie

Instrukcje podsumowanie. Proste: - przypisania - wejścia-wyjścia (read, readln, write, writeln) - pusta - po prostu ; (średnik) Strukturalne:

Procedury i funkcje - powtórzenie i uzupełnienia. Przykład funkcji potęgowanie przy wykładniku naturalnym

P R OGRA M OW A N I E KOMPUTERÓW Ćwiczenia laboratoryjne

GRAFIKA I ROZPOZNAWANIE OBRAZÓW

Podstawy programowania 2. Temat: Wprowadzenie do wskaźników. Przygotował: mgr inż. Tomasz Michno

2.Sprawdzanie czy podana liczba naturalna jest pierwsza Liczba pierwsza to liczba podzielna tylko przez 1 i przez siebie.

Pliki. Ze względu na typ zawartych w nich danych rozróżnia się trzy podstawowe rodzaje plików:

Programowanie w języku Pascal

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)

Podstawy programowania. Wykład: 9. Łańcuchy znaków. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Pascal typy danych. Typy pascalowe. Zmienna i typ. Podział typów danych:

PLIKI TEKSTOWE F C E 30 0D 0A 42 6F 72 6C 61 6E 64 1A T U R B O _ P A S C A L _ 7. 0

Procedury i funkcje. Przykład programu z procedurą. Definicja. Cechy procedury

Wszystkie zmienne typu plikowego, z wyjątkiem Output i Input muszą być zadeklarowane w sekcji deklaracji programu, który z nich korzysta.

WIADOMOŚCI WSTĘPNE WPROWADZENIE DO JĘZYKA TURBO PASCAL. Klawisze skrótów. {to jest właśnie komentarz, moŝna tu umieścić dowolny opis}

PIERWSZE URUCHOMIENIE PROGRAMU ITNC PROGRAMMING STATION

Programowanie w językach wysokiego poziomu

Instrukcja standardowa Writeln

Kurs Turbo Pascal 7.0

PASCAL Kompendium. Środowisko TURBO PASCAL Skróty klawiaturowe. Edycja kodu Pomoc spis treści. Skopiowanie zaznaczonego bloku do schowka

Krótki kurs obsługi środowiska programistycznego Turbo Pascal z 12 Opracował Jan T. Biernat. Wstęp

INSTRUKCJA ITERACYJNA REPEAT. repeat Instrukcja_1; Instrukcja_2; {... } Instrukcja_N; until wyr ; INSTRUKCJA ITERACYJNA WHILE

PASCAL FUNKCJE PREDEFINIOWANE

Lekcja 6: Pascal. Procedura i funkcja

Podstawy programowania, Poniedziałek , 8-10 Projekt, część 1

Algorytmy i struktury danych

KATEGORIA OBSZAR WIEDZY

Ćwiczenie 2 Wczytywanie i zapisywanie do plików tekstowych

Wstęp do programowania

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki

Wykład 15. Literatura. Kompilatory. Elementarne różnice. Preprocesor. Słowa kluczowe

Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++

Wstęp do programowania. Procedury i funkcje. Piotr Chrząstowski-Wachtel

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1

Wizualne systemy programowania. Wykład 11 Grafika. dr Artur Bartoszewski -Wizualne systemy programowania, sem. III- WYKŁAD

Spis treści. Podstawy posługiwania się komputerem

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

Programowanie w języku C++ Grażyna Koba

Obsługa klawiszy specjalnych

Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego

Elementy języków programowania

Podstawy programowania skrót z wykładów:

Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane

typ zakres sposob zapamietania shortint integer bajty (z bitem znaku) longint byte word

Notepad++ / PuTTY. Interaktywne środowisko programowania w języku ForthLogic. Wersja dokumentu P.1. Wersja dokumentu NP1.

APROKSYMACJA. Rys. 1. Funkcja aproksymująca zbiór punktów pomiarowych (1) (2) (3) (4) (5) (6) (7) ... Zmienna y

Wrocław, dn. 19 kwietnia 2006 roku. Anna Kaleta Piotr Chojnacki IV rok, informatyka chemiczna Liceum Ogólnokształcące nr 10 we Wrocławiu

Autor: dr inż. Katarzyna Rudnik

Wstęp do programowania. Wykład 1

Edytor tekstu MS Office Word

PASCAL. Etapy pisania programu. Analiza potrzeb i wymagań (treści zadania) Opracowanie algorytmu Kodowanie Kompilacja Testowanie Stosowanie

KATEGORIA OBSZAR WIEDZY

Windows XP Wiersz polecenia

Programowanie w języku LOGO KOMENIUSZ

20. Pascal i łączenie podprogramów Pascala z programem napisanym w C

DIAGRAMY SYNTAKTYCZNE JĘZYKA TURBO PASCAL 6.0

TWORZENIE OBIEKTÓW GRAFICZNYCH

Wykład 8: klasy cz. 4

ROZSZERZANIE MOŻLIWOŚCI...

Programowanie kontrolera RH robota S-420S Opracował: Karol Szostek

Informatyka 1. Przetwarzanie tekstów

Wprowadzenie Tablica jednowymiarowa Tablice wielowymiarowe Algorytmy Rekordy Pliki Zadania Bibliografia

Opis problemu i przedstawienie sposobu jego rozwiązania w postaci graficznej. Gimnazjum nr 3 im. Jana Pawła II w Hrubieszowie 1

1. Nagłówek funkcji: int funkcja(void); wskazuje na to, że ta funkcja. 2. Schemat blokowy przedstawia algorytm obliczania

Sylabus Moduł 2: Przetwarzanie tekstów

Podstawy Programowania

Kompendium wiedzy z Pascala

Wartości x-ów : Wartości x ów można w Scilabie zdefiniować na kilka sposobów, wpisując odpowiednie polecenie na konsoli.

Wykład 4. Tablice. Pliki

INSTRUKCJE PĘTLI, INSTRUKCJA WYBORU. Instrukcja pętli For to do

Podstawy programowania

1. Pierwszy program. Kompilator ignoruje komentarze; zadaniem komentarza jest bowiem wyjaśnienie programu człowiekowi.

Zajęcia komputerowe klasy I-III- wymagania

2 Przygotował: mgr inż. Maciej Lasota

Podstawy programowania

Święta w ASCII Art Czym jest ASCII Art? ASCII-Art to sposób tworzenia bardzo prostych rysunków w programach komputerowych,

Transkrypt:

Programowanie w języku Pascal Dr inż. Grażyna KRUPIŃSKA grazyna@novell.ftj.agh.edu.pl D-10 pokój 227

Od algorytmu do programu PROBLEM ALGORYTM PROGRAM ŹRÓDŁOWY wykonywalnego ETAPY PROGRAMOWANIA 0. WYBÓR-ZNALEZIENIE- OPRACOWANIE ALGORYTMU 1. IMPLEMENTACJA to zapis algorytmu w języku programowania PROGRAM WYKONYWALNY KOMPUTER 2.TRANSLACJA to tłumaczenie programu źródłowego na kod maszynowy 3. URUCHOMIENIE programu 4. TESTOWANIE programu 12/1/2011 Język Pascal - Grafika 2

Struktura programu w Pascalu nazwa jest jednym wyrazem (bez spacji) nazwa nie zawiera polskich liter program polekola; uses crt; const pi=3.14; var p,r:real; writeln( pole koła ); writeln('podaj promień'); readln(r); p:=pi*r*r*; nagłówek programu część deklaracyjna część wykonawcza writeln(pole koła wynosi,p:4:2) end. program nazwa; uses lista modułów; const deklaracje modułów moduły to zbiory funkcji i procedur, które możemy wykorzystywać w naszych programach nazwa=wartość; definicje stałych var lista zmiennych:typ; deklaracje zmiennych wszystkie zmienne występujące w programie muszą być wcześniej zadeklarowane instrukcje programu end. Kolejność zapisywania instrukcji odpowiada kolejności wykonywania Instrukcje oddzielamy średnikiem 2011-12-01 Programowanie w języku Pascal 3

Dokładność obliczeniowa program dokladnosc; var x,y,z : Real; x := 7.244; y := sqrt(x); z := x - y*y; write ('Dokladnosc maszynowa wyniosla '); writeln(z); writeln ('... nacisnij klawisz ENTER'); readln; end. 12/1/2011 Język Pascal - Grafika 4

Podprogramy Pascal posiada dwa rodzaje podprogramów Procedury używane do wykonania przez program jakiejś złożonej czynności np. wczytanie lub wydrukowanie zawartości tablicy, wyczyszczenie ekranu itp. Funkcje wykonują zespół instrukcji, którego efektem jest obliczenie jakiejś wartości ( być może poprzez wykonanie wielu rachunków elementarnych) 12/1/2011 Język Pascal - Grafika 5

Procedura Program TakieCosTam; uses crt; type Tablica=array[1..10] of integer; procedure nazwa (lista parametrów); var lista zmiennych; zestaw instrukcji; end; procedure WypiszTablice(var t:tablica); var i:integer; writeln ('Zawartosc tablicy:'); for i:=1 to 10 do writeln('t[',i:2,']=', t[i]); end; var a,b :tablica; i:integer; Zdefiniowaną procedurę wywołujemy w programie podając jej nazwę z listą parametrów Begin for i:=1 to 10 do a[i]:=i*2; b[i]:= i; end; WypiszTablice(a); WypiszTablice(b); 12/1/2011 Język Pascal - Grafika 6 end.

Funkcja Program funkcja; uses crt; type Tablica=array[1..10] of integer; function nazwa (lista param.):typ ; var lista zmiennych; zestaw instrukcji; nazwa := wartość end; function srednia (var t:tablica): real; var i, suma :integer; Begin suma := 0; for i:=1 to 10 do suma := suma + t[i]; srednia := suma/10; end; var a,b :tablica; i:integer; Begin for i:=1 to 10 do a[i]:=i*2; b[i]:= i; end; writeln('srednia tablicy a =',srednia(a)); writeln('srednia tablicy b = ',srednia(b)); end. 12/1/2011 Język Pascal - Grafika 7

Zmienne globalne i lokalne W programie głównym deklarujemy zmienne globalne to znaczy takie które są widoczne w całym programie (zmienne globalne mają przydzieloną pamięć przez cały czas pracy programu) W procedurach i funkcjach deklarujemy zmienne lokalne widziane tylko przez podprogram w programie głównym nie są one widoczne (zmienne lokalne mają pamięć przydzieloną tylko na czas wykonywania podprogramu po jego wykonaniu pamięć jest zwalniana a wartość zmiennej ulega zagubieniu) 12/1/2011 Język Pascal - Grafika 8

Program zmienne; uses crt; var zmienna_1 : integer; //zmienna globalna Zmienne globalne i lokalne procedure pierwsza ( ); var zmienna_2 :integer; //zmienna lokalna w procedurze zmienna_2 :=2; writeln('w procedurze zmienna_1 = ', zmienna_1:2); writeln('w procedurze zmienna_2 = ', zmienna_2:2); writeln('w procedurze zmienna_3 = ', zmienna_3:2); end; var zmienna_3 : integer; ; //zmienna lokalna w procedurze głównej zmienna_3:=3; zmienna_1 :=1; writeln('zmienna_1 = ', zmienna_1:2); writeln('zmienna_2 = ', zmienna_2:2); writeln('zmienna_3 = ', zmienna_3:2); pierwsza(); end. 12/1/2011 Język Pascal - Grafika 9

Przekazywanie parametrów procedure p_1(a_1:integer); a_1:=21; end; procedure p_2(var a_2:integer); a_2:=45; end; var b:integer; Begin b :=10; p_1( b); writeln ('po pocedurze p_1 b = ',b:3); b:=10; p_2( b); writeln ('po pocedurze p_2 b = ',b:3); end. 12/1/2011 Język Pascal - Grafika 10

Moduły Wszystkie polecenia języka Turbo Pascal zostały uporządkowane w postaci grup zwanych modułami (ang. units). Istnieje kilka standardowych modułów, które zostały dołączone do programu Pascal (System, Dos, Crt, Printer, Graph, itp.) Moduł standardowy System jest dostępny automatycznie. Pozostałe wymagają świadomego dołączenia przez programistę. Możliwe jest również tworzenie własnych modułów. 12/1/2011 Język Pascal - Grafika 11

Moduły Wśród modułów standardowych wyróżniamy: System zawiera procedury standardowe języka; Crt zawiera procedury obsługi ekranu, klawiatury i sterowania dźwiękami emitowanymi przez głośnik komputera; Dos zawiera procedury współpracujące z systemem operacyjnym; Graph zawiera procedury potrzebne do tworzenia grafiki; 12/1/2011 Język Pascal - Grafika 12

Moduły Aby móc korzystać z procedur któregoś z modułów należy zadeklarować jego użycie (nie dotyczy to modułu System, który jest automatycznie deklarowany przez program Pascal). program polekola; Moduł deklaruje się poprzez użycie uses crt, słowa graph; uses, a const dalej podje się nazwę modułu lub modułów oddzielając je przecinkami. pi=3.14; var p,r:real; instrukcje end. 12/1/2011 Język Pascal - Grafika 13

Moduł Crt ClrScr-czyści ekran i ustawia kursor w lewym górnym rogu (pozycja 0:0) Delay(MS : word)-zatrzymuje program na określoną ilość milisekund. GotoXY(X, Y : byte)-przesuwa kursor do punktu x:y KeyPressed{ : Boolean}-sprawdza aktywność klawiatury ReadKey{ : Char }-wczytuje znak z klawiatury TextBackground(color: byte)- zmienia kolor tła TextColor(color: byte)- zmienia kolor tekstu 12/1/2011 Język Pascal - Grafika 14

Moduł Crt program pierwszy; uses crt; TextBackground(7); //deklaracja użycia modułu Crt //zmienia kolor tła na szary ClrScr; //czyścimy ekran GotoXY(30,13); //umieszczamy kursor w pozycji 30:13 TextColor(4); //zmieniamy kolor czcionki na czerwony write( To jest pierwszy tekst ); //i piszemy end. 12/1/2011 Język Pascal - Grafika 15

Moduł Crt program drugi; uses crt; TextBackground(3); //deklaracja użycia modułu Crt //zmienia kolor tła na niebieski ClrScr; //czyścimy ekran GotoXY(0,0); //umieszczamy kursor w pozycji 0:0 TextColor(4); //zmieniamy kolor czcionki na różowy write( To jest pierwszy program ); //i piszemy GotoXY(10,10); //umieszczamy kursor w pozycji 10:10 TextColor(4); //zmieniamy kolor czcionki na zielony write( To jest pierwszy program ); //i piszemy end. 12/1/2011 Język Pascal - Grafika 16

Moduł Crt program trzeci; uses crt; var i:byte; ClrScr; textcolor(1); for i:=0 to 10 do textcolor(i); writeln; writeln(' To jest kolor nr - ',i:2); end; readln; end. 12/1/2011 Język Pascal - Grafika 17

Moduł Graph Moduł Graphobsługuje operacje ekranowej grafiki punktowej (pikselowej). Zawiera procedury i funkcje, które umożliwiają rysowanie na ekranie monitora krzywych różnych kształtów i kolorów, wypełnianie obszarów określonym wzorem i kolorem, wykreślanie tekstów o zdefiniowanej przez użytkownika wielkości wybraną czcionką w poziomie lub pionie. Umiejętne wykorzystanie zasobów modułu pozwala również na tworzenie rysunków animowanych 12/1/2011 Język Pascal - Grafika 18

Inicjalizacja trybu graficznego Tryb graficznyjest ściśle związany z kartą graficzną, w jaką jest wyposażony komputer. Podczas inicjowania trybu graficznego należy określić właściwy dla danego sprzętu sterownik i tryb pracy ekranu. Do tego służy procedura DetectGraph. DetectGraph (sterownik, tryb); sterownik identyfikator karty sterownika graficznego; tryb tryb graficzny (rozdzielczość, ilość kolorów); 12/1/2011 Język Pascal - Grafika 19

Inicjalizacja trybu graficznego Z przeważającej większości procedur i funkcji modułu graficznego można korzystać dopiero po zainicjowaniu graficznego trybu pracy monitora, czyli wywołaniu procedury InitGraph: InitGraph (sterownik: Integer, tryb: Integer, ścieżka: String); sterownik identyfikator karty sterownika graficznego; tryb tryb graficzny (rozdzielczość, ilość kolorów); ścieżka katalog, w którym znajduje się sterownik *.bgi Przejście do trybu graficznego powoduje przydzielenie części pamięci operacyjnej dla potrzeb realizacji operacji graficznych. Po zakończeniu ich wykonywania należy zwolnić tę część pamięci i przywrócić poprzedni tryb tekstowy za pomocą procedury CloseGraph 12/1/2011 Język Pascal - Grafika 20

Inicjalizacja trybu graficznego Dla prawidłowej pracy monitora w trybie graficznym potrzebne są programy obsługujące zainstalowaną w komputerze kartę graficzną. Programy takie nazwano sterownikami (ang. Drivers). W systemie TurboPascalzdefiniowano sterowniki dla 8 najpopularniejszych kart graficznych komputerów klasy IBM: CGA, MCGA, EGA, VGA, Hercules, ATT400, IBM8514, IBM3270PC. Sterownikom tym nadano rozszerzenie BGI (Borland Graphics Interface) 12/1/2011 Język Pascal - Grafika 21

Okno graficzne Wszystkie operacje graficzne wykonywane są w obrębie okna graficznego. W momencie inicjacji trybu graficznego okno zajmuje cały ekran. Lewy, górny róg ekranu ma współrzędne (0,0) i jest początkiem układu, którego oś pionowa jest skierowana w dół, a oś pozioma -w prawo. Współrzędne prawego dolnego rogu są określone przez funkcje GetMaxX, GetMaxYi zależą od rozdzielczości ekranu i jego trybu pracy. 12/1/2011 Język Pascal - Grafika 22

Prosty program graficzny program linia; uses Graph, Crt; var sterownik, tryb, karta : SmallInt; DetectGraph(sterownik,tryb); //inicjalizacja trybu graficznego InitGraph (sterownik,tryb,'c:\program Files\Dev-Pas'); SetColor (4); //ustawiamy kolor Line (30,30,610,450); //rysujemy linie od punktu (30,30) do punktu (610,450) Repeat Until Keypressed; CloseGraph; //zamykanie trybu graficznego repeat until keypressed; end. 12/1/2011 Język Pascal - Grafika 23

Prosty program graficzny program kwadraty; uses Graph, Crt; var sterownik, tryb : SmallInt; DetectGraph (sterownik,tryb); //inicjalizacja trybu graficznego InitGraph (sterownik,tryb,'c:\program Files\Dev-Pas'); SetColor ( Green); Rectangle (30,30,120,120); //rysowanie kwadratów Rectangle (10,10,100,100); repeat until keypressed; CloseGraph; //zamykanie trybu graficznego repeat until keypressed; end. 12/1/2011 Język Pascal - Grafika 24

Prosty program graficzny program kwadraty; uses Graph, Crt; var sterownik, tryb : SmallInt; DetectGraph (sterownik,tryb); //inicjalizacja trybu graficznego InitGraph(sterownik,tryb,'C:\Program Files\Dev-Pas'); SetColor ( Green); Rectangle (30,30,120,120); //rysujemy kwadrat Circle (150, 150, 100); //rysujemy okrąg SetFillStyle(1, red); //ustawianie sposobu wypełniania FloodFill(50, 50, Green); //funkcja wypełniająca repeat until keypressed; CloseGraph; //zamykanie trybu graficznego repeat until keypressed; end. 12/1/2011 Język Pascal - Grafika 25

Procedura FloodFill Funkcja FloodFill FloodFill(X, Y : Integer; kolorgranicy : Word); wypełnia kolorem i wzorem podanym w procedurze SetFillStyle obszar ekranu. Jeżeli przy wypełnianiu napotka linię, wykonaną kolorem kolorgranicy przerywa wypełnianie tak jakby to był dla niej mur nie do przejścia Punkt X, Y jest miejscem od którego procedura zaczyna wypełnianie. 12/1/2011 Język Pascal - Grafika 26

Kolejne procedury Bar(X1, Y1, X2, Y2) : rysuje wypełniony prostokąt. X1,Y1 to współrzędne lewego górnego rogu, X2,Y2 to współrzędne prawego dolnego rogu. Kolor ramki jest określany przez procedurę SetColor, a kolor wypełnienia przez procedurę SetFillStyle. Bar3D(X1, Y1, X2, Y2; B; TOP) : rysuje trójwymiarowy prostokąt wypełniony. X1,Y1 to współrzędne lewego górnego rogu przedniej ścianki, X2,Y2 to współrzędne lewego dolnego rogu przedniej ścianki, zmienna B jest to głębokość prostopadłościanu, zmienna TOP określa czy górna powierzchnia jest widoczna czy nie. PutPixel(X, Y; Kolor) : wyświetla jeden punkt o współrzędnych (X, Y) i podanym kolorze. OutTextXY(X, Y, S):wyświetla na ekranie tekst określony przez zmienną S rozpoczynając od współrzędnych X, Y. Kolor tekstu podawany jest przez procedurę SetColor. ClearDevice :procedura ta czyści ekran graficzny, analogicznie do procedury ClrScr w trybie graficznym 12/1/2011 Język Pascal - Grafika 27

Pliki Pliki zawierają dane przechowywane w pamięci dyskowej są zachowywane po zakończeniu pracy z programem Pliki reprezentowane są w programie przez zmienną plikową Zmienna plikowa musi zostać związana ze znajdującym się na dysku plikiem fizycznym [Plik fizyczny stanowi obszar pamięci dyskowej identyfikowalny poprzez nazwę] Podczas pracy programu dane z pliku są sprowadzane do pamięci operacyjnej tam są przetwarzane Dane w plikach są zapisywane po kolei (sekwencyjnie) można je odczytywać po kolei lub zażądać odczytania elementu o określonym numerze. Liczba elementów w pliku jest dowolna (ograniczona wolnym miejscem na dysku) Po przetworzeniu dane mogą być zapisane do tego samego lub innego pliku 2011-12-01 Programowanie w języku Pascal 28

Pliki -rodzaje Pliki tekstowe składają się ze znaków kodów ASCII pogrupowanych we wiersze o różnej długości Wiersz kończy się parą znaków CR LF (#10 #13) Plik kończy się znakiem końca pliku EOF (#26) Pliki binarne dane zapisane są binarnie (liczby dwójkowe) nie nadają się do bezpośredniego oglądania wymagają interpretacji przez program Pliki zdefiniowane składają się z elementów o określonej strukturze (np. ze zdefiniowanych w programie rekordów) Pliki niezdefiniowane poszczególne porcje danych mogą mieć różny rozmiar i różne znaczenie program odczytujący musi wiedzieć co tam jest 2011-12-01 Programowanie w języku Pascal 29

Pliki -przetwarzanie Deklaracja zmiennej plikowej zm_plik:rodzaj pliku; text plik tekstowy file of element - plik elementów File plik niezdefiniowany Skojarzenie zmiennej z plikiem fizycznym Otwarcie pliku Wykonanie operacji na pliku ReWrite(zm_plik); Reset(zm_plik); Append(zm_plik); Assign(zm_plik,nazwa pliku); Read(zm_plik,lista zmiennych); Write(zm_plik,lista zmiennych); nazwa pliku ze ścieżką dostępu nowy pliku do zapisu danych plik do odczytu danych plik tekstowy do dopisania danych na końcu Zamknięcie pliku Close(zm_plik); plik otwarty musi zostać zamknięty 2011-12-01 Programowanie w języku Pascal 30

Pliki -przydatne funkcje EOF(zm_plik) zwraca TRUE gdy osiągnięto koniec pliku EOLN(zm_plik) zwraca TRUE gdy osiągnięto koniec linii w pliku tekstowym Seek(zm_plik,n) ustawia wskaźnik pliku na elemencie o numerze n FilePos(zm_plik) zwraca aktualną pozycję wskaźnika pliku FileSize(zm_plik) zwraca liczbę elementów pliku IOResult zwraca 0 gdy ostatnią operację na pliku wykonano pomyślnie w przeciwnym wypadku zwraca kod błędu 2011-12-01 Programowanie w języku Pascal 31