Programozási nyelvek, Pascal
Programozási nyelvek Program: a számítógép számára érthető utasítások sorozata, mely az adatok megfelelő feldolgozásával egy feladat megoldását célozza meg Gépi kód, natív kód: a gépi kódú program a gép számára közvetlenül érthető és végrehajtható utasítások sorozata (futtatható program) ez az utasítás kódjával kezdődik, majd az utasítás paraméterei következnek
Programozási nyelvek (folyt.) az utasítások mérete (byteban) a processzortól függ egy utasítás egyértelműen meghatározza az őt követő paraméterek számát, hogy hány byteot foglalnak le, és hogy mit jelentenek a paraméter lehet konkrét érték vagy memóriacím, de léteznek paraméter nélküli utasítások is
Programozási nyelvek (folyt.) Alacsony szintű programnyelvek a gép számára közvetlenül érthető utasításokat nehéz megjegyezni, így ezeknél rövid emlékeztetővel jelölik azokat a gép ezt nem érti, így fordítóprogram szükséges hozzá nem gépi kód, de közel áll hozzá gyors és kis helyfoglalású program írható vele pl.: assembly
Programozási nyelvek (folyt.) Magas szintű programnyelvek közelebb állnak az emberi gondolkodáshoz, így a forráskód számunkra érthető a gép számára ez nem érthető, fordító program kell hozzá (compiler) ezek a forráskódból futtatható állományt hoznak létre (gép ezt érti), majd végrehajtják azt végrehajtás más módszerrel: interpreter programmal megnéz egy sort, lefordítja, futtatja, majd jön a következő sor, nem készít futtatható állományt hátránya: lassú, és a kód mindig kell hozzá
Turbo Pascal A XVII. Század jelentős tudósáról, Blaise Pascalról kapta a nevét. 1968-ban a Pascal nyelv vázlatát Niklaus Wirth készítette el (Zürich) 1973-ban definiálták a szabványos Pascal nyelvet 1983-ban a Borland cég elkészítette a Turbo Pascalt, mely szövegszerkesztőt és fordítót is tartalmazott
Turbo Pascal (folyt.) 1991-ben jelent meg a Turbo Pascal for Windows A Turbo Pascal tartalmaz: egy szövegszerkesztőt egy fordítót (compiler) eljárásgyűjteményeket (unit)
Pascal program felépítése program programnév; var változódeklarációk begin utasítások end. programfej programtörzs
Pascal program felépítése A Pascal program egy név megadásával kezdődik nem tartalmazhat ékezetes karaktert, szóközt, speciális jeleket szám lehet benne, de azzal nem kezdődhet szóköz helyett _ karakter használható A változódeklaráció előtt lehet konstans-deklaráció: const konstans_nev = konstans_ertek;
Pascal program felépítése az eljárásokat és függvényeket a programtörzs előtt kell megadni ha beépített függvényeket/eljárásokat akarunk használni, akkor meg kell az eljárásgyűjtemény nevét, amiben az benne van a program neve alatt kell megadni uses unitnev formában a programtörzs (főprogram) begin és end közé kerül a programot lezáró end után pont található
Változótípusok Egész típusok Neve Mérete Helyfoglalása shortint -128..127 1 byte integer -32768..32767 2 byte longint 4 byte byte 0..255 1 byte word 0..65535 2 byte
Változótípusok Valós típusok Neve Mérete Helyfoglalása real 2,9*10-39..1,7*1038 6 byte single 1,5*10-45..3,4*1038 4 byte double 5*10-324..1,7*10308 8 byte Logikai típus – boolean csak igaz vagy hamis értéket vehet fel Karakter típus - char
Változótípusok Szöveges típus – string Tömb típus – array megadható a hossza is: string[20] – maximum 20 karakter hosszú Tömb típus – array meg kell adni mellé a tömb méretét, és elemeinek típusát x:array[1..n] of integer; { egész elemeknél}
Alapvető utasítások Kiíratás képernyőre write('szöveg', változó) – kiírja a zárójelben lévő adatokat a képernyőre kiírandó szöveget ' ' jelek közé kell írni a változók értékét a nevük használatával írhatjuk ki writeln('szöveg', változó) – kiírja a zárójelben lévő adatokat a képernyőre a kiírás után sort emel (a következő képernyőn megjelenő utasítás új sorba kerül)
Alapvető utasítások Bekérés képernyőről read(változó) – beolvassa a képernyőre írt adatot a változóba a változónak és a beírt adatnak egyforma típusúnak kell lennie!! readln(változó) – beolvassa a képernyőre írt adatot a változóba a beolvasás után sort emel (a következő képernyőn megjelenő utasítás új sorba kerül) Beolvasás előtt érdemes kiíratni a képernyőre, hogy milyen adatot szeretnénk beolvastatni
Alapvető utasítások Értékadás: változó:=kifejezés A kifejezés először kiértékelésre kerül, majd ennek eredménye kerül a változó nevű változóba a kifejezés eredményének és a változó típusának meg kell egyeznie Pl.: c:=a*b (ahol a, b és c egész számok)
Képernyőtörlés A képernyőtörléshez a clrscr (clear screen) parancs használható ehhez használnunk kell a crt nevű unitot (eljárásgyűjteményt), amiben a clrscr parancs található a beolvasás és kiíratás parancsához nincs szükség külön unitra, mivel azok a system unitban találhatóak, amiket alapértelmezetten használ a Pascal program a unitokat uses paranccsal adhatjuk meg
Képernyőtörlés program torol; uses crt; begin clrscr; end. Ez a kis program csak a képernyőt törli le.
Elágazások - egyágú Algoritmus Pascal kód ha feltétel akkor utasítások hvége if feltétel then begin end; A feltételt lezáró vége-jelzés (end) mögött ; áll, csak a program legvégén használhatunk pontot
Elágazások - kétágú Algoritmus Pascal kód ha feltétel akkor utasítások különben hvége if feltétel then begin end else end;
Elágazások - kétágú ha az adott ágban csak egy utasítás található, akkor a begin – end páros elhagyható az else előtti sor végére sosem tesszük ki a ; jelet !!!
Elágazások - többágú Algoritmus Pascal kód elágazás amikor feltétel1: utasítások amikor feltétel2: … különben evége case kifejezés of érték1: utasítás1; érték2: utasítás2; else utasítás; end;
Elágazások - többágú ez a lehetőség csak akkor használható, ha a kifejezés elemi típusú (egész, valós vagy karakter) az értékek helyére egy konkrét érték vagy egy intervallum adható meg többágú elágazás készíthető if-then-else szerkezetek egymásba ágyazásával is
Ciklusok - léptetős egy utasítás esetén a begin-end páros elhagyható Algoritmus Pascal kód ciklus i:=1..n lk=1 ismétel utasítások cvége for i:=1 to n do begin end; egy utasítás esetén a begin-end páros elhagyható lépésköz nem adható meg, visszafelé léptetés viszont igen: to helyett a downto használatával
Ciklusok - elöltesztelős Algoritmus Pascal kód amíg feltétel ismétel utasítások avége while feltétel do begin end; egy utasítás esetén a begin-end páros elhagyható
Ciklusok - hátultesztelős Algoritmus Pascal kód ismétel utasítások ivége feltétel esetén repeat until feltétel;