Ajánlott szakirodalom:

Dr. Kuki Ákos PhD: Egy nagyon jó Pascal jegyzet

Pascal fejlesztői környezet
Benkő Tiborné-Benkő László-Tóth Bertalan-Varga Balázs: Programozzunk Turbo Pascal nyelven!(ComputerBooks, Bp., 1996 ISBN: 963 618 112 8)
Dr. Hack Frigyes: Pascal 6.0 és Vision mindenttudó (Novotrade Kiadó Kft., Bp., 1993, ISBN: 963 585 183 9)



A gyakorlat példái, megoldásai:
Nem kell vizsgálni, hogy az adat beleesik-e az értelmezési tartományba, illetve diszkutálni!
Writeln, readln, real, sin, cos, arctan, sqrt, pi
2005.09.12
  1. Kérj be egy szögértéket fokban, írasd ki a szinuszát!
  2. Kérj be egy szögértéket fokban, írasd ki a koszinuszát!
  3. Kérj be egy szögértéket fokban, írasd ki a tangensét!
  4. Kérj be egy szögértéket fokban, írasd ki a kotangensét!
  5. Kérj be egy szögértéket fokban, írasd ki a szekánsát!
  6. Kérj be egy szögértéket fokban, írasd ki a koszekánsát!
  7. Adott egy szög szinusza, írasd ki fokban a szög értékét!
  8. Adott egy szög koszinusza, írasd ki fokban a szög értékét!
  9. Adott egy szög tangense, írasd ki fokban a szög értékét!
  10. Adott egy szög kotangense, írasd ki fokban a szög értékét!
  11. Adott egy szög szekánsa, írasd ki fokban a szög értékét!
  12. Adott egy szög koszekánsa, írasd ki fokban a szög értékét!
  13. Kérd be egy szabályos háromszög oldalát, írasd ki a kerületét, területét!
  14. Adott egy 3,8 magas köralapú kúp, térfogata 30. Kérd be x-et, s írasd ki, hogy a 3,8-x magas kúp térfogata mennyivel kisebb!
  15. Kérd be a-t, b-t, c-t, s írasd ki az ax2+bx+c polinom zérushelyeit!
  16. Kérd be a-t, b-t, írasd ki az logab-t!


char, string, copy, s[i], while, repeat, for,  random, upcase, val, str, valós típusok
2006.09.25
  1. Írasd ki az angol ábécé betűit "A"-tól "Z"-ig!
  2. Írasd ki az angol ábécé minden második betűjét "z"-től "a"-ig!
  3. Kérj be egy sztringet, s írasd ki betűnként, mindegyiket új sorba!
  4. Kérj be egy sztringet, s írasd ki visszafele!
  5. Kérj be egy sztringet, s írasd ki minden második betűjét!
  6. Kérj be egy sztringet, s írasd ki úgy külön sorokba, hogy az i. sorban az első i darab betűje van!
  7. Kérj be egy sztringet, s írasd ki úgy külön sorokba, hogy az i. sorban az első i darab betűje van, majd szóközök, s a sor eleji részlet fordítva, s az utolsó karakterek egymás alatt helyezkednek el. Az utolsó sorban a sztring szerepel, majd a fordítottja (nincs közöttük szóköz)!
  8. Kérj be egy sztringet, s írasd ki úgy külön sorokba, hogy az i. sorban hiányzik az utolsó i darab betűje (az 0. sorban maga a szó van)!
  9. Kérj be egy nevet, s írasd ki, hogy férjes asszonyról van-e szó (azaz az utolsó 2 betűje a "ne" részstringet alkotja)!
  10. Kérj be egy állomány nevet, s írasd ki, hogy program-e (".com", ".exe", ".bat" az utolsó 4 karaktere)!
  11. Írj programot, melyben [0-100] intervallumban kitalál a gép egy számot, maximum 10-szer lehet tippelni, s mindig tájékoztat, hogy a tipp kisebb, vagy nagyobb, esetleg pont a gondolt szám. Ha eltaláltuk, nem kér több tippet.
  12. Dobj n-et kockával, írasd ki az egyes esetek számát, s a dobások átlagát!
  13. Dobj n-et kockával, s minden dobás után írasd ki az átlagot!
  14. Kérj be 2 sztringet, állapítsd meg, hogy része-e a második az elsőnek, s ha igen, hanyadik pozíción kezdődik benne!
  15. Írasd ki While ciklussal 0-100-ig a 3-al osztható számokat!
  16. Írasd ki Repeat ciklussal 100-13-ig a páros számokat!
  17. Kérj be számokat 0 végjelig, írasd ki a számtani átlagukat!
  18. Kérj be 0 végjelig számokat, írasd ki a legnagyobbat, legkisebbet, s hány szám volt öszesen!
  19. Kérj be sztringeket, írasd ki a leghosszabbat, s a legrövidebbet, "escape" jelentse a bevitel végét!
  20. Kérj be egy valós számot, írasd ki a számjegyei összegét! A program védje ki azt is, ha esetleg nem számot írtunk be!
  21. Kérj be egy szöveget, s minden bennelévő nagy betűt alakíts át kis betűre, majd írasd ki!
  22. Kérj be egy számot, majd írasd ki úgy, hogy minden számjegye 2-vel nagyobb! (8 ---0, 9---1)


CRT unit+könyvtár és fájl kezelés+DOS unitból idő, dátum (assign kimradt)
2006.10.2
  1. Kérj be egy szöveget, s scrollozd a képernyőn!
  2. Írasd ki a színeket színesen!
  3. Írasd ki valósidőben a dátumot s az időt 5 másodpercig villogásmentesen!
  4. Írj programot, mely létrehoz a gyökérben egy ALMA és egy KORTE nevű alkönyvtárat, majd az ALMA-ban egy JONATAN-t!
  5. Írj programot, mely letöröli az iménti alkönyvtár struktúrát!
  6. Nevezd át a programod forrás állományát, majd töröld le!
  7. Kék háttérben piros betűvel a képernyő közepén írasd ki a bekért sztringet (tfh. a sztring rövidebb, mint 80 karakter)
  8. Írj programot, melyben 3 menüpont van: IR, TOROL, KILEP. A menünevek kezdőbetűit leütve belépünk a menüpontba, B-re visszalépünk, az IR kiírja, hogy kiiras, a TOROL törli a képernyőt, a KILEP értelemszerű.
  9. Szólaltassunk meg egy hangot, míg le nem nyomunk egy billentyűt!
  10. Írj programot, mely meghatározza, hogy mely legmagasabb és mely legalacsonyabb hangot hallja a felhasználó!
  11. Írj programot, mely egy O betűt tudunk mozgatni a képernyőn!
  12. Írj programot, mely véletlen színű, helyzetű véletlen kódú karaktereket ír a képernyőre!
  13. Írj programot, mely véletlen színű, helyzetű véletlen méretű téglalapokat ír a képernyőre!
  14. Írasd ki a lenyomott billentyűk kódjait a képernyőre! (x-re kilép)
  15. Írasd ki két billentyű lenyomása alatt eltelt időt!



Eljárás, függvény, CASE
2006.10.9
  1. Írj eljárást, mely megnöveli az első paraméter értékét a második duplájával! (duplaz(a,b))
  2. Írj függvényt, mely ab-t számolja! (hatv(a,b))
  3. Írj függvényt, mely visszaadja 2 szám lnko-ját! (lnko(a,b))
  4. Írj eljárást, mely kicseréli a két valós paraméter értékét! (csere(a,b))
  5. Írj függvényt, mely a lkkt-t adja vissza! (lkkt(a,b))
  6. Írj eljárást, mely kiír egy piros A betűt a megadott pozícióba! (kiir(x,y))
  7. Írj eljárást, mely visszaadja egy lineáris egyenlet gyökeit! (megold(m,b,x))
  8. Írj függvényt, mely a faktoriálist számolja rekurzív módon! (f(n))
  9. Írj eljárást, mely megduplázza egy vektor hosszát! (vd(x1,y1,x2,y2))
  10. Írj függvényt, mely visszaadja egy vektor hosszát! (vh(x1,y1,x2,y2))


Tömb, rekord, with, változóhosszúságú rekord
2006.10.16
  1. Kérj be kilenc számot, írasd ki 3x3-as mátrix alakban!
  2. Kérj be 5 számot, írasd ki növekvő sorrendben!
  3. Kérj be 5 sztringet, írasd ki csökkenő sorrendben!
  4. Kérj be egy 3x3-as mátrixot, írasd ki az elemek átlagát, a sorok összegét, a legnagyobb elemét a mátrixnak!
  5. Kérd be 4 könyv adatait (cím, szerző, ár), majd írasd ki ár és cim szerinti sorrendben!
  6. Kérd be 5 hallgató adatait (név, évfolyam, tanulmányi átlag), majd lehessen választani, hogy melyik adat szerinti sorrendben írassuk ki a hallgatók adatait, s írja is ki a program a megfelelő sorrendet!
  7. Kérj be 3 terméket: megnevezés, darabszám, egységár, majd írasd ki táblázatos formában hogy melyikből mekkora érték van a raktáron!
  8. Erasztotenészi szitával írasd ki 10000-ig a prímszámokat!
  9. A börtönben 100 cella van, melyeket a kulcs 90 fokos elfordításával lehet nyitni és zárni is (mindegy, hogy merre forgatjuk a kulcsot). Kezdetben minden cella zárva van, a börtönőr sorba járja a cellákat, első körüljárásra minden cella kulcsát elfordítja 90 fokkal, második körüljárásra minden második celláét csak, és így tovább. Mely cellák lesznek nyitva a 100. körbejárás után? Írj rá modellező programot!
  10. Kérj be egy 4x4-es mátrixot, írasd ki azon elemek indexeit, melyek sorukban maximálisak, oszlopukban minimálisak!


Tipizált, szöveges és típusnélküli állományok
2006.10.30-2006.11.06
  1. Hozz létre egy szam.dat állományt, írasd bele a prímeket 10000-ig!
  2. A nev.txt text típusú állományban nevek vannak soronként, írd át úgy, hogy rendezve legyenek! (max. 10 név van)
  3. Kérd be egy text típusú állomány nevét, írasd ki, hogy hány begin és end van benne!
  4. Kérd be egy text típusú állomány nevét, írd át úgy, hogy minden sora fordítva legyen!
  5. Az a.dat állomány integerekből épül fel, írasd ki a számtani átlagukat!
  6. Az a.dat állomány integerekből épül fel, írasd ki minden második elemét!
  7. Kérd be egy állomány nevét, töröld ki belőle a szóközöket!
  8. Kérd be egy állomány nevét, majd azt, hogy melyik karaktert melyikre cserélje ki benne, s végezd is el a cserét!
  9. Az a.dat 30 hosszú sztringekből álló állományból írasd ki a legrövidebb és a leghosszabb elemet!
  10. Az a.dat text típusú állomány sorai a következőképpen épülnek fel: szám szóköz szám szóköz karakter pl.(1 1 A). A számok 0 és 255 közötti egész számok, írd minden sor után: ->C, ahol C kódja a két szám összege+a karakter kódja.


Grafika, szövegkiírás nélkül
2006.11.13
  1. Rajzoltass szakaszt, melynek kezdőpontja 0,0, végpontja 100,100!
  2. Rajzoltasd véletlen helyzetű és sugarú körökkel tele a képernyő balfelső negyedét úgy, hogy a körök minden pontja ebbe a negyedbe essen!
  3. Rajzoltass spirált!
  4. Írj eljárást, mely adott pozícióba adott nagyságú négyzetet rajzol! negyzet(x,y,a:integer), ahol x és y a balfelső sarok koordinátája, a pedig az oldalhossz
  5. Fraktál tenisz.


Grafikus szövegkiírás, saját unit
2006.11.20
  1. Kérd be egy téglalap oldalait, középpontjának koordinátáit, rajzoltasd ki csíkozva kék színnel és piros kerettel, majd írasd bele a megfelelő helyre: balalsó, balfelső, jobbalsó, jobbfelső sarok, közepe. Ügyelj a pontos pozicionálásra!
  2. Kérd be egy kör középpontját, sugarát és egy szöveget. Rajzoltasd ki a kört, majd írasd alá és mellé a szöveget érintőlegesen úgy, hogy megfelelő szimmetria tengelye illeszkedjen a kör középpontjára!
  3. Írj unitot, s azt használó programot, mely tartalmaz :
    Egy szakasz nevű eljárást, amely csak putpixelt használva kirajzolja a szakaszt. A paraméterek a szakasz végpontjainak koordinátái.
    Egy hatvany nevű függvényt, amely az első paramétert emeli a másodikra. A paraméterek valós számok.
    Egy negyzet nevű eljárást, amely kirajzol egy négyzetet. A paramétere a négyzet egy átlójának végpontjainak koordinátái.


Memória kezelés, mam, memw, meml, absolute, new, dispose, ^, láncolt lista
2006.11.27
  1. Közvetlen memória kezeléssel írasd ki a neved a képernyőre! másképpen
  2. Kérj be egy sztringet, írasd ki a hosszát úgy, hogy rádefiniálsz egy változót a sztring hosszát tartalmazó byte-ra!
  3. Írasd ki az angol ábécét mem segítségével!
  4. Olvass be számokat 0 végjelig, helyezd el a heap-ben őket, majd írasd ki!
  5. Olvass be számokat 0 végjelig, helyezd el a heap-ben őket, írasd ki azonos sorrendben majd visszafele is!
  6. Olvass be számokat 0 végjelig, rendezetten helyezd el a heap-ben őket, majd írasd ki!