1 / 33

Jazyk Pascal Štruktúra a prvky programu

Jazyk Pascal Štruktúra a prvky programu . Doc. Ing. Juraj Vaculík, PhD., Mail : juvac@fpedas.utc.sk Web http://nf446.host.sk. Štrukrúra programu. identifikačná časť - definuje program (nepovinné) alebo knižnicu, deklaračná časť – deklaruje všetky použité prvky v programe,

Download Presentation

Jazyk Pascal Štruktúra a prvky programu

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Jazyk Pascal Štruktúra a prvky programu Doc. Ing. Juraj Vaculík, PhD., Mail : juvac@fpedas.utc.sk Web http://nf446.host.sk

  2. Štrukrúra programu • identifikačnáčasť - definuje program (nepovinné) alebo knižnicu, • deklaračnáčasť – deklaruje všetky použité prvky v programe, • výkonná časť – jadro programu, ktoré sa vykonáva Všetko je treba zapísať správne a v správnom poradí Progranmovanie 2006 Id_program

  3. Identifikačnáčasť - program • pre program : program id_programu; • Program – voliteľné kľúčové slovo – definuje program – kompilátor generuje tvar *.EXE Progranmovanie 2006 Id_unit

  4. Identifikačná časť - unit • pre knižnicu: unit id_kniznice; • Unit – povinné kľúčové slovo – definuje knižnicu – kompilátor generuje tvar *.TPU Tento musí byť totožný s názvom súboru v ktorom je knižnica umiestená, napríklad ak názov modulu je: Kniznica.pas potom musí byť v jej identifikačnej časti uvedené Unit kniznica; Progranmovanie 2006 deklaračná

  5. Deklaračnáčasť • definícia knižníc - uses • definícia návesti - label • definícia konštánt - const • definícia dátových typov - type • definícia premenných - var • deklarácia užívateľských procedúr a funkcií Progranmovanie 2006 uses

  6. Definícia knižníc - uses Knižnica je množina procedúr, funkcií, konštánt, dátových typov a premenných Borland Pascal obsahuje nasledovné štandardné knižnice • Crt, Dos, Graph, Graph3, Overlay, Printer, System • Strings, WinAPI, WinCrt, WinDOS, WinPrn, WinProcs, WinTypes Progranmovanie 2006 knižnice

  7. Sekcia uses - knižnice Syntax:uses zoznam_knižníc; • Štandardné knižnice, • Užívateľské knižnice. Príklad: Uses dos, crt, vlastna; Sekcia uses musí byť ako prvá , záleží na poradí knižníc. Progranmovanie 2006 label ...

  8. Definícia návesti - label Deklaruje návestia, na ktoré môže byť odvolávka v hlavnom programe. label identifikátor1, ... identifikátorN; Návestie je postupnosť číslic v rozsahu 0 až 9999. Návestia sa využívajú v príkaze goto Progranmovanie 2006 label

  9. Ukážka použitia návestia Program navestie; label 5,6,7,8,9; begin ... {časť programu} 9 write(´pokračovanie ...´); ... {časť programu} if koniec thengoto 5 else goto 9; .... {časť programu} 5 halt(); end. Progranmovanie 2006 const

  10. Definícia konštánt - const Hodnota, ktorá sa v programe nemení - Pascal pozná dva typy konštánt typové a netypové, pričom typové sa chovajú ako premenné const identifikátor = výraz; alebo. identifikátor : type = výraz; Progranmovanie 2006 konštanty

  11. Definícia konštánt ukážky const MaxData = 1024 * 64 - 16; NumChars = Ord('Z') - Ord('A') + 1; A = 1; { číselná konštanta } B = $F; { hexadecimálne číslo } LF= #10; { znaková konštanta } text='PASCAL' { reťazcová konštanta } NovyRiadok: string[2] = #13#10; TrueStr: string[3] = 'Áno'; Ch : char = #27; Progranmovanie 2006 type ...

  12. Definícia dátových typov V programe obyčajne pracujeme s informáciami, ktoré obsahujú údaje ktoré spadajú do jedného zo základnýchdátovýchtypov prostredníctvom premennej. Keď deklarujeme premennú, musíme určiť jej typ. Typ premennej popisuje množinuhodnôt, ktoré môže nadobúdať a operácie, ktoré sa na ňou môžu vykonávať. Progranmovanie 2006 type ...

  13. Sekcia type – definícia typov Definuje vlastnédátovétypy, alebo je možné predefinovať exitujúce Syntax:id_typu= existujúci_typ ... Napríklad: Type re=real; predefinovanie typu veta = record ... novýtyp zoznam položiek; end; Progranmovanie 2006 type

  14. Vlastné dátové typy - type Type re = real; veta = record meno : string[35]; priezvisko : string[50]; znamka : array[1..10] of byte; .... end; var v : veta; cislo : re; cis : real; V tomto prípade sú typy re a real identické. Progranmovanie 2006 var

  15. Sekcia premenných - var Premenná – pomenované miesto v pamäti, kde môžeme ukladať hodnoty. Jej typ určuje rozsah hodnôt a operácie nad nimi. Syntax : id_premennej : dátový_typ; Var a : real; b,c : integer; Progranmovanie 2006 premenné

  16. Definícia premenných uvádza sa kľúčovým slovom Var aobsahuje zoznam identifikátorov, ktoré označujú nové premenné a ich dátový typ var X, Y, Z; Real; I, J, K: Integer; Digit: 0..9; C: Color; Done,Error: Boolean Operator: (Plus, Minus, Times); Progranmovanie 2006 absolútna

  17. Premenné – absolútna pozícia Premenné je možné deklarovať tak, aby boli trvalo uložené na určitých adresách pamäti – nazývajú sa absolútne a špecifikuje ich direktíva absolute a adresa. var mode : byte absolute $0040:$0049; Page : array[1..25,1..80] ofrecord ch, atr : char endabsolute $B800:$0000; Progranmovanie 2006 Proc a fnc

  18. Procedúry a funkcie Procedúra alebo funkcie je samostatná časť programu ktorá vykonáva činnosť. • procedure id_proc; alebo id_proc (parametre); • function id_fnc : typ_navratu; alebo id_fnc (parametre):typ_navratu; Hlavička procedúry alebo funkcie – meno, parametre, návrat [Label <deklarácia návestí>; {lokálne deklarácie} Const <deklarácia konštánt>; Type <definícia dátových typu>; Var <deklarácia premenných>; <deklarácia procedúr a funkcií> ] begin <telo procedúry alebo funkcie> end; Progranmovanie 2006 procedúra

  19. Deklarácia procedúry Pomenovaná časť programu – vykoná sa Procedure meno [(formalne_parametre)]; [všetky deklaračné časti ako program] begin [telo procedúry] end; volanie meno (reálne_parametre); Progranmovanie 2006 funkcia

  20. Deklarácia funkcie Pomenovaná časť programu, ktorá sa vykoná a priamovrátihodnotu (chová sa v podstate ako premenná, aj ju tak môžeme použiť): Function meno (form_param)]:typ_návratu; [všetky deklaračné časti ako program] begin [telo funkcie] meno:=hodnota_návratu; end; Použitie : prem:=meno(param); a:=a+meno(xy); write(meno(xy); Progranmovanie 2006 parametre

  21. Parametre procedúr a funkcií Parameter tvorí interface (prepojenie) medzi programom a procedúrou alebo funkciou. • hodnotou – predanie parametru hodnotou – len jedným smerom do objektu, • premennou – predávanie parametru cez premennú – obojsmerne, • s udaným typom • bez udania typu. Progranmovanie 2006 hodnota ...

  22. Parametre hodnotou Deklarácia: Procedure Vstup(X,Y : integer); Použitie: Vstup(a,b); Vstup(100,250); Príklad: Gotoxy(10, 25); s:=10; r:=25; Gotoxy(s,r); Progranmovanie 2006 hodnota

  23. Parameter - hodnota Function pow3 (a : real):real; begin Pow3:=a*a*a; end; Funkcia na výpočet tretej mocniny s parametrom „a“ cez hodnotu. Použitie x:=pow3(a); alebo x:=pow3(10); Parameter môžebyť premenná alebo hodnota. Progranmovanie 2006 premenná ...

  24. Parameter premennou Deklarácia: Procedure Vstup(var X,Y : integer); Procedure Vstup(var X,Y); Procedure Vstup(var X,Y : integer;R : boolean); Použitie: Vstup(a,b); Vstup(a,b, true); Príklad: Readln(a,b); Progranmovanie 2006 premenná ...

  25. Parameter premenná Procedure pow3 (var a : real); begin a:=a*a*a; end; Procedúra na výpočet tretej mocniny - parameter „a“ slúži ako vstup do procedúry a súčasne ako výstup z nej. Použitie : x:=10; pow3(x); Po volaní premenná x obsahuje výsledok t.j. 1000. Parameter musíbyť len premenná Progranmovanie 2006 knižnice

  26. Knižnica by mala obsahovať • procedúry,funkcie a objekty obecne, ktoré sú použiteľné niekoľko krát v rôznych programoch, • dátovéštruktúry, typy a konštanty, ktoré majú platnosť vo viacerých moduloch • komplikované a zložitéalgoritmy, ktoré nie je vhodné vkladať do programu, ochrana autora, zložitosť modulu a pod. • časti programov pre zjednodušenia hlavného programu. Progranmovanie 2006 štruktúra

  27. Užívateľské knižnice Štruktúra knižnice pozostáva zo štyroch častí: • identifikačná časť definovaná kľúčovým slovom unit. • časť prepojenia - interface part definuje globálne prvky • časť implementačná - implementation part sústreďuje lokálne prvky knižnica • časť inicializačná - inicialization part voliteľná časť, Progranmovanie 2006 ukážka

  28. Štruktúra knižnice Unit identifikátor; interface{globálne prvky} uses,const, type, var, procedure, function ... implementation {lokálne prvky} uses,label,const,type, var procedure function begin {inicializačné príkazy} end. Progranmovanie 2006 interface

  29. Sekciainterface • predstavuje prepojovaciu časť. V tejto sú sústredené všetky prvky knižnice, ktoré by mali byť prístupné z programu. • V sekcii môžubyť definované, podobne ako v programe alebo nižšom syntaktickom celku, hlavne premenné, konštanty a dátové typy ktoré sú zdieľané programom ku ktorému je knižnica pripojená klauzulou uses. • V tejto sekcií sú súčasne uvedené všetkyhlavičkyprocedúr a funkcií prístupných z programov. Progranmovanie 2006 implementácia

  30. Sekciaimplementácie • predstavuje lokálnu časť knižnice. • môžubyť definované všetky lokálne prvky ako knižnice, konštanty, návestia, dátové typy a podobne ale tieto majú platnosť len v rámci knižničného modulu. • musia byť uvedené kompletné deklarácie procedúr a funkcií, ktorých hlavičky sú deklarované v sekcii interface Progranmovanie 2006 inicializácia

  31. Inicializácia • voliteľná časť knižnice, • je umiestená na konci medzi príkazmi begin a end. • V nej môžu byť definované napríklad nastavenia dátových premenných deklarovaných v knižnici, vykonanie inicializačných podprogramov a pod. Progranmovanie 2006 Výkonná časť

  32. Výkonná časť Postupnosť riadiacich príkazov a výrazov uzavretých medzi slová begin a end. Výkonná časť je ukončená znakom bodky. Všetko, čo je za tým kompilátor ignoruje. Begin príkazy; end. Príkazy jazyka, predstavujú riadiaceštruktúry. Progranmovanie 2006 koniec

  33. Ďakujem za pozornosť ... Pokračovanie: Príkazy Pascalu

More Related