Download as pdf or txt
Download as pdf or txt
You are on page 1of 45

"#"& '()*,*-.

&0 1,$2*3*2/4#0 & $,'5/4*/)6)/7)


8(*,# 9/*.4$:$0 4&/ ;/4*)*".&0 - =?A C5'.2*E





12*-2&""&F/:"G0 A
C H,7::& 12*-2&""&F/:"*I PASCAL












?5/"J,'/&: K6,JF:*E ?EFE(.&







=4&M$"&N4G PF*0 2009-2010

!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 2 -
!"#!$%(!)*

#$%(() *+,.+)//)01(/,2 456758 9;+,= >' !"#$%(()+ ,")-"&..&/#0.)1, 3&0#578 !+/)(78,
9+/)(78 !,#()-;8 5&# &,)=%0!>+, 9+/)(78 !,&+%(<?<8, @,),")-"%..&/& !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " # "
$&'()*)+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " . "
/0123 456758 9:;<=>? @!A !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " B "
CDEFG,HI H,J 456758 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " KA "
LMOI& PQRISTU*U 'H,U 4V<WVX !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " KK "
LQDQ'HTJ H,J 4V<WVX !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " KY "
PIS+ QUZJ O[I)[FSS(HIJ 'Q 4V<WVX !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " KY "
$UHIDTJ H,J 4V<WVX!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " K# "
$UHIDTJ Q&'ZRIN " Q\ZRIN !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " K# "
PIS+ C]IDIN_`(J !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " K. "
a QUHID+ " cd!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " KB "
a QUHID+ " 756% !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " K@ "
$UHIDTJ $O(UFD,e,J fa QUHID+ d31g!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " Kh "
$UHIDTJ $O(UFD,e,J fa QUHID+ ibc8% " j3g !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " YA "
$UHIDTJ $O(UFD,e,J fa QUHID+ 1%4%5/ " 0k/c8g !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " YA "
P&(R&]('`QJ l(& nNU([H+'Q&J !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " YK "
P&(R&]('`QJ " 4;>W:op;:< !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " YY "
nNU([H+'Q&J " dp?Wq=>?< !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " Y. "
r(_,S(H&]TJ 'NU([H+'Q&J G&GD&I_+],J H,J 456758 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " YB "
tSI&ZH,HQJ " P&(EI[TJ P&(R&]('&uU ](& nNU([H+'Q*U! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " Yv "
*+,?&+@/;A) B;/)0) (0@A 456758 9;+,= C' A"C!D& !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " Y@ "
C[wQ`( !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " Yh "
C[wQ`( lQ&STUIN !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " Yh "
C[wQ`( rQ LMOI !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " #. "
*+,?&+@/;A) B;/)0) (0@A 456758 9;+,= #' D+&5!8, 9--"&=78 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " #v "
x`U(]QJ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " #@ "
CU(y+H,', nHI&wQ`*U nQ x`U(](z nQ&[&(]+ CU(y+H,', f6:;=VX 6:V;W{g !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " #h "
L(\&UZS,', nHI&wQ`*U nQ x`U(](z L(\&UZS,', |N'(D`R(J f2p}}X: 6>;qg !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " #~ "
$))[(ETJ " 1:W>;o< !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " .Y "
E+G(1/<= )A)H,+;= .1) 0@A 456758 9;+,= I' 3#$(#)-"&=D& !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " .B "
&GD&I)[(E`( !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " .B "
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 3 -










#$%(() *+,.+)//)01(/,2 456758

9;+,= >'

!"#$%(()+ ,")-"&..&/#0.)1,
3&0#567 !+/)(67,
8+/)(67 !,#()-:7 5&# &,)<%0!=+,
8+/)(67 !,&+%(;>;7,
?,),")-"%..&/&



!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 4 -
E Ei io od dy y y yq q
H Pascal dvdn1y0qkc 1o 1971 dn 1ov Niklaus Wirth kdi dvqkci o1qv kd1qyopid 1ov yAoooov
uqqAo cnincou, dqo civdi ckoAd kd1dvoq1q dn 1ov dv0pono, dAAd yi kdi dn 1ov
qAck1povik unoAoyio1q (H/Y).
H Pascal civdi id yAoood ycvikq ypqoq, q onoid civdi kd1dAAqAq 1oo yid 1qv ckndicuoq
oo kdi yid 1q qioupyid ioyupov npoypdd1ov kd0c 1nou. Xdpdk1qpio1ik 1q Pascal civdi
q kd1dAAqA1q1d yid 1q qioupyid oqcvov npoypdd1ov.
Oi yAoooc npoypdd1ioo idkpivov1di oc yAoooc qydvq, ouoAikc yAoooc q
yAoooc ydqAo cnincou kdi oc yAoooc uqqAo cnincou.
Apyikd yid vd nopcoci o H/Y vd ck1cAcoci id onoidqno1c Aci1oupyid, cnpcnc vd o0ov
kd1cu0cidv oi kd1dAAqAc oqyic dn 0 kdi 1, qAdq cv1oAc oc opqq kd1dvoq1q dn 1ov
H/Y dAAd dkd1dvq1c yid 1ov dv0pono. O 1pno du1 q1dv cninovo kdi cAdyio1oi
nopoodv vd 1ov uAonoiqoouv, dqo dndi1ooc d0id yvooq 1ou uAiko kdi 1q
dpyi1ck1ovikq 1ou unoAoyio1q.
Z1q ouvcycid cyouc 1i ouoAikc yAoooc q yAoooc ydqAo cnincou. Oi cv1oAc 0d
c1dqpdo1ov dn 1ov H/Y oc id dkoAou0id udikov qqqiov (0 kdi 1) kdi o1q ouvcycid
nopov vd ck1cAco1ov. Tq c1dqpdoq 1ov cv1oAov 1qv dvdAddvci cvd ciik npypdd,
o ouoAoc1dqpdo1q (assembler).
Oi yAoooc uqqAo cnincou civdi ckoAd kd1dvoq1c dn 1ov dv0pono dqo doi(ov1di oc
Acci 1q kd0oiAocvq yAoood. Tq c1dqpdoq 1ov cv1oAov 1qv dvdAddvci o
c1dyAo11io1q (compiler).
Mid yAoood npoypdd1ioo npooiopi(c1di dn 1o dAqdq1 1q, 1o AciAyi 1q, 1q
ypdd1ikq 1q kdi 1q oqdoioAoyid 1q. AAqdq1o kdAci1di 1o ovoAo 1ov o1oiyciov nou
ypqoionoici1di dn 1q yAoood npoypdd1ioo. (ydpdk1qpc nou cni1pcnov1di o1i cv1oAc
1ou npoypdd1o) To AciAyio dno1cAci1di dn cvd unoovoAo Aov 1ov dkoAou0iov nou
qioupyov1di dn 1d o1oiycid 1ou dAqdq1ou. (Acci nou ypqoionoiov1di yid 1qv ckqpdoq
1ov cv1oAov). H ypdd1ikq dno1cAci1di dn 1o 1unik q 1unoAoyik kdi 1o ouv1dk1ik. Tunik
civdi 1o ovoAo 1ov kdvvov nou opi(ci 1i opqc c 1i onoic id Acq civdi dnock1q.
Zuv1dk1ik civdi 1o ovoAo 1ov kdvvov nou kd0opi(ci 1q voi1q1d 1q id1dq kdi 1q
ovcoq 1ov Accov id yAoood.
H oqdoioAoyid civdi 1o ovoAo 1ov kdvvov nou kd0opi(ci 1o vqd 1ov Accov. H idikdoid
npoypdd1ioo 1ov H/Y ncpiAddvci 1d cq o1did:
AvAuoq: kd1dvqoq 1ou cocvou npoAqd1o kdi kd1do1pooq 1q idikdoid
cniAuoq 1ou.
Zcido 1ou dAyopi0ou cniAuoq: nopci vd ckqpdo1ci c quoikq yAoood c qd1d,
idypdd1d poq, qcuokoikd, kAn.
Zuyypdqq 1ou npoypdd1o: ypqoq ciikov npoypdd1ov (editors), nou ndpcyouv
Aci1oupyic dv1iypdqq, c1dqopd, dvd(q1qoq kcicvou, dno0qkcuoq q ck1nooq 1ou
npoypdd1o. To dno1cAcod civdi o nqydio koikd (source code) 1ou npoypdd1o,
1o onoio cv civdi dcod kd1dvoq1 dn 1ov H/Y.
Mc1dyA11ioq (compilation): 1ou nqydiou koikd oc yAoood qydvq. Av o nqydio
koikd c civdi ouv1dk1ikd ooo1, o c1dyAo11io1q (compiler) cqdvi(ci qvd1d
Ad0ou. Av civdi ouv1dk1ikd ooo1 ndpdyci 1ov ck1cAcoio koikd.
Aidovcoq ovdov npoypdd1o dn idqopc1ikd dpycid.
Ek1cAcoq 1ou npoypdd1o.
TAcyo 1ou npoypdd1o c idqopd cocvd, oo1c vd cdkpio0ci q op0q q
Adv0docvq Aci1oupyid 1ou, kdi ip0ooq 1ov Aoyikov Ad0ov 1ou npoypdd1o, qAdq
Ad0ov nou oqyov oc q dvdcvcvd dno1cAcod1d, c 1q oq0cid ciikov
npoypdd1ov nou Acyov1di ckoqdAd1o1c (debuggers).
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 5 -
T TU UR RB BO O P PA AS SC CA AL L V Ve er rs si io on n 7 7. .0 0
Iid vd cvcpyonoiqoouc 1q yAoood npoypdd1ioo Pascal 0d npcnci vd ndc o1o kd1dAoyo
nou ncpicyci 1o dpycio c 1o vod TURBO.EXE kdi vd nd1qoouc ndvo oc du1 ci1c inA kAik
ci1c cvd kAik kdi c1d 1o nAqk1po ENTER. Od oc vd d cqdvi(c1di o1qv o0vq d 1o
ncpidAAov 1q Turbo Pascal 7.

Z1qv kopuqq 1q o0vq qdivov1di oi cniAoyc File, Edit, Search, Run, Compile, Debug, Tools,
Options, Window kdi Help. Hd1ov1d 1o nAqk1po F10 0d pc0oc o1o cvo cniAoyov nou
piokc1di o1qv kopuqq 1q o0vq kdi c 1d nAqk1pd 1ou pocd dpio1cp q ci
nopoc vd c1dkivq0oc o1qv kd0c cniAoyq kdi vd 1qv cvcpyonoiqoouc. tvd dAAo
1pno civdi vd nd1qoouc 1o nAqk1po <Alt> kdi 1o npo1o ypdd 1q cniAoyq nou 0cAouc
vd cvcpyonoiqoouc. Av o1ov unoAoyio1q nou cyouc undpyci nov1iki nopoc vd
cvcpyonoiqoouc 1i nio ndvo cniAoyc 1ou cvo c 1o pocd 1ou nov1ikio.
Od ndpd1qpqoouc 1i o1qv ndvo cpid o1o kcv1po undpyci 1o vod NONAME00.PAS cnciq
cv cyouc ooci dkd kdnoio vod o1o dpycio d. Topd cido1c c1oioi vd ypdqouc 1o
npo1o d npypdd oc yAoood Pascal. Ipdq1c 1o nio kd1o npypdd.
PROGRAM MY_FIRST_PROG;
BEGIN
WRITELN('HELLO WORLD!!');
END.
Iid vd oooouc 1o npypdd d ci1c o1o okAqp ioko (C:) ci1c nqydivc1c 1o cAo 1ou
nov1ikio o1q Acq File kdi nd1qo1c cvd kAik, ci1c cyov1d nd1qcvo 1o nAqk1po ALT nd1qo1c
kdi 1o nAqk1po F, q nd1qo1c 1o nAqk1po F10 kdi nqydivc1c o1qv cniAoyq File kdi nd1qo1c 1o
nAqk1po Enter. Od ci1c vd cqdvi(c1di q ndpdkd1o o0vq.
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 6 -

1o cvo File ncpicyci 1i nio kd1o cniAoyc:
New od cni1pcnci vd qioupyqoc1c cvd kdivopyio npypdd.
Open od cni1pcnci vd dvoic1c kdnoio ndAi od dno0qkcucvo npypdd
Save od cni1pcnci vd oooc1c 1o 1pcyov npypdd od c cvd vod 1q cniAoyq od.
Save as od cni1pcnci vd oooc1c 1o 1pcyov npypdd od kdi c kdnoio dAAo vod.
Print od cni1pcnci vd ck1unooc1c 1o 1pcyov npypdd od
Exit od cni1pcnci vd qyc1c dn 1o ncpidAAov 1q Turbo Pascal 7.
Mc1dkivq0ci1c c 1o ndvo q 1o kd1o cAdki o1qv cniAoyq Save kdi nd1qo1c Enter 11c 0d
cqdvio1ci o1ov H/Y od q nio kd1o o0vq:

Z1q ncpioyq nou Acci Save file as ypdq1c C:ASK1-1 kdi nd1qo1c c 1o nov1iki od 1o OK. Od
ndpd1qpqoc1c 1i o1qv ndvo cpid o1o kcv1po 1o vod NONAME00.PAS cyci dAAdci oc
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 7 -
C:ASK1-1.PAS nou 1o C: civdi 1ou okAqpo iokou kdi 1o ASK1-1.PAS civdi 1o vod 1ou
dpyciou ASK1-1 nou oodc c 1qv cnck1doq PAS (npypdd oc yAoood PASCAL).
Od ndpd1qpqoc1c 1i o1o npo1o npypdd nou q1iddc ckivqodc ypdqov1d 1q Acq
program kdi cvd vod 1q dpcokcid d. H Acq program civdi cocucvq Acq (cv
nopoc vd 1qv ypqoionoiqoouc dAAo) kdi 0d civdi q npo1q Acq oc kd0c npypdd d.
AkoAou0ci1di ndv1d dn cvd vod 1q cniAoyq d 1o onoio 0d ckivd ndv1d c cvd ypdd
kdi 0d dkoAou0ci1di dn ouvudo ypdd1ov q dpi0ov yopi cvidcod kcvd. Av 0cAc1c vd
yopioc1c 1o vod ypqoionoiqo1c 1qv kd1o ndAd ( _ ). Acoo c1d 1o vod dA1c 1o ;
To kupio cpo 1ou npoypdd1 od ncpiAddvc1di o1i Acci begin kdi end.
H writeln civdi id ciikq Acq nou cni1pcnci vd cqdvio1ov kdnoid cocvd o1qv o0vq 1ou
unoAoyio1q d. Td cocvd cod o1qv ndpcv0coq civdi 1d cocvd nou 0d ck1uno0ov, kdi
ndp1i undpyouv noAAd qq cocvov nou 0d cni0uoodc vd ck1unooouc, 0d
ncpiopio1oc o1o nio dnA ndpdciyd yid 1qv opd. Onoidqno1c nAqpoqopid dvdcod o1i
dnoo1pqou 0d ck1uno0ci o dnA kcicvo. H ciikq Acq writeln cv civdi cocucvq Acq
dAAd civdi kd0opiocvq dn 1o oo1qd vd kdvci id ciikq ouAcid yid od, qAdq vd
ck1unovci id ypdq dn cocvd o1qv o0vq.
Hdpd1qpqo1c 1o cpo1qd1ik o1o 1cAo 1q ypdq. Eivdi o idyopio1q ckqpdocov kdi Acci
o1ov compiler 1q Pascal 1i q ypdq civdi nAqpq, qAdq 1ino1d dn 1d cncvd cv nopci
vd 0copq0ci o ouvcycid du1q 1q ckqpdoq. H cncvq ckqpdoq, civdi id cyopio1q
ckqpdoq nou nopci vd ck1cAco1ci ocipidkd dkoAou0ov1d 1qv ckqpdoq 1q npoqyocvq
ypdq. Au1 1o npypdd 0d ck1unooci 1i uo ypdc kcicvou kdi 0d 1cpd1io1ci.
TcAo, undpyci kdi kdnoio dAAo noA oqdv1ik oqcio du1o 1ou npoypdd1o: q 1cAcid nou
dkoAou0ci 1o end. H 1cAcid du1q civdi oqdi npo 1ov compiler 1i 1cAciooc 1o npypdd
1ou ck1cAcoiou cpou kdi cnioq 1i 1cAciooc q c1dyAo11ioq. Kd0c npypdd Pascal cyci
id kdi vq 1cAcid q onoid 0d piokc1di o1o 1cAo 1ou npoypdd1o. Zkcq1ci1c cvd
npypdd Pascal o id np1doq c id 1cAcid o1o 1cAo.
Au1q q1dv q ncpiypdqq 1ou npo1ou d npoypdd1o. Topd civdi kdip vd 1o
c1dyAo11ioc1c kdi vd 1o 1pcc1c. Hd1qo1c <Alt>+C q c 1o nov1iki od kdv1c cvd kAik o1q
cniAoyq Compile. Od cqdvio1ci q nio kd1o o0vq:

An 1o cvo du1 d cvidqcpouv oi cniAoyc [Complile Alt+F9] kdi [Destination..].
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 8 -
H cniAoyq Destination dAAd(ci dv ndc ndvo oc du1q kdi nd1qoouc Enter. AAAd(ci dn
Destination Memory oc Destination Disk. Av dqqoouc 1qv cniAoyq Destination Memory, 11c
1o dno1cAcod 1ou Compilation 0d ndci o1qv vqq 1ou H/Y kdi 1o npypdd 0d ck1cAci1di
cod dn 1o ncpidAAov 1q Turbo Pascal c 1qv cniAoyq RUN dn 1o cvo nou piokc1di
o1qv kopuqq 1q o0vq. Av cniAcouc Destination Disk 11c 1o dno1cAcod 1ou Compilation
0d civdi cvd dpycio 1o onoio 1opd 0d piokc1di o1o C: ckci nou ooodc 1o dpycio d ASK1-
1.PAS kdi 0d cyci 1ov iio vod dAAd c 1qv cnck1doq .EXE kdi 0d nopci vd ck1cAci1di
kd1cu0cidv dn 1o ncpidAAov 1ou DOS.
Aqo oAokAqpo0ci q c1dyAo11ioq (Compilation) kdi cv cyci pc0ci kdvcvd Ad0o o1o
npypdd d 11c 0d ndpouc o1qv o0vq 1ou unoAoyio1q d 1o nio kd1o qvud:

1i 1o compilation q1dv cni1uyc kdi vd nd1qoouc cvd onoioqno1c nAqk1po yid vd
ouvcyioouc. Topd cido1c c1oioi vd 1pcouc 1o npypdd d. Hqydivouc o1qv cniAoyq
RUN kdi cqdvi(c1di q nio kd1o o0vq:

!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 9 -
Hqydivc1c o1qv cniAoyq [Compile Ctrl+f9] kdi nd1qo1c Enter. Iid vd ci1c 1d dno1cAcod1d 1q
ck1cAcoq 1ou npoypdd1o nqydivc1c o1qv cniAoyq Debug kdi nd1cio1c ENTER. Od
cqdvio1ci q nio kd1o o0vq:

Hqydivc1c o1q cniAoyq [User screen Alt+F5] kdi nd1cio1c Enter. Od ci1c 1d dno1cAcod1d 1q
ck1cAcoq 1ou npo1ou npoypdd1 od nou civdi q nio kd1o o0vq:
Turbo Pascal Version 7.0 Copyright 1983,92 Borland International
HELLO WORLD!!
yid vd yupioc1c o1o ncpidAAov 1q Turbo Pascal nd1cio1c cvd onoioqno1c nAqk1po o1o
nAqk1poAyio od.
Zqcooq: Mnopoc vd kdvouc Ac 1i nio ndvo idikdoic noA nio ypqyopd c 1d nio
kd1o qd1d:
Iid vd 1pcc1c 1o npypdd od: cyov1d nd1qcvo 1o nAqk1po Ctrl nd1qo1c id qopd 1o
nAqk1po F9
Iid vd ci1c 1d dno1cAcod1d: cyov1d nd1qcvo 1o nAqk1po Alt nd1qo1c id qopd 1o
nAqk1po F5
Topd ypdq1c 1d nio kd1o npoypdd1d:
PROGRAM TEST1;
BEGIN
WRITELN('MY NAME IS . ');
WRITELN('AND I AM A STUDENT ');
WRITELN('AT TEI OF EPIRUS.');
END.

PROGRAM TEST2;
BEGIN
WRITE('MY NAME IS . ');
WRITE('AND I AM A STUDENT ');
WRITE('AT TEI OF EPIRUS.');
END.
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 10
-
H write civdi id dAAq ciikq Acq q onoid unoypcovci 1o kcicvo vd ck1uno0ci no kdi c
1qv writeln, dAAd o kcpoopd cv dAAd(ci ypdq o1qv coo. H writeln ypdqci 1o npo
ck1nooq kcicvo kdi dAAd(ci ypdq, q write yi. To 1cAik dno1cAcod civdi kdi oi 1pci
ypdc vd ck1unovov1di o1qv iid ypdq 1dv 1o npypdd ck1cAco1ci. Hpooc1c 1i o1o
1cAo kd0c Acq undpyci o kcv ydpdk1qpd, oo1c 1o 1cAik dno1cAcod vd civdi kdAdio0q1o.
Mc1dyAo11io1c kdi ck1cAco1c 1o npypdd.
Ipdq1c 1o nio kd1o npypdd:
PROGRAM TEST3;
VAR A,B,C,D,SUM :INTEGER;
MO : REAL;
BEGIN
A:=10;
B:=20;
C:=30;
B:=40;
SUM:=(A+B+C+D);
MO:=SUM/4;
WRITELN('TO ATHROISMA EINAI ', SUM);
WRITELN('O MESOS OROS EINAI ', MO);
END.

A AA Aq q q q1 1o o 1 1q q P PA AS SC CA AL L
To dAqdq1o 1q Pascal ncpiAddvci 1ou Ad1iviko ydpdk1qpc a z kdi A - Z, 1d qqqid 0
- 9 kdi 1d ooAd + - * / = < > [ ] . , _ ( ) : ; ' ^ @ { } $ #
H Pascal civdi non case-sensitive yAoood (q cudio0q1q oc nc(d -kcqdAdid), qAdq 1d nc(d
kdi 1d kcqdAdid cyouv 1qv iid dkpio oqdoid. Iid ndpdciyd, 1d ovd1d sum, Sum kdi
SUM dvdqcpov1di o1qv iid dkpio c1dAq1q.
Ono oc kd0c yAoood npoypdd1ioo, undpyouv kdi o1qv Pascal oi cocucvc Acci
(reserved words), nou ypqoionoiov1di o1q ov1dq 1ov cv1oAov 1q Pascal kdi cv nopov
vd ypqoionoiq0ov yid dAAo okon (n.y. yid ovodoid c1dAq1ov). Mcpikc dn du1c civdi
oi: program, const, var, function, procedure, begin, end, if, then, else, for, to,
downto, goto, do, while, repeat, until, case, of, array, record, k.d.
Iid 1qv cniAoyq dn 1ov npoypdd1io1q cv ovd1o o1qv Pascal (o c1dAq1q,
o1d0cpd, npoypdd1o, ouvdp1qoq, kAn.) undpyouv oi cq kdvvc:
o Acv npcnci 1o vod vd civdi cocucvq Acq 1q Pascal.
o Eni1pcnov1di vo dAqdpi0q1ikoi ydpdk1qpc kdi o ydpdk1qpd _
o Eni1pcnov1di vo Ad1ivikd ypdd1d.
o O npo1o ydpdk1qpd npcnci vd civdi Ad1ivik ypdd q _ (yi qqqio).
Oi o1d0cpc idkpivov1di oc dpi0q1ikc (n.y. 12, 4.5, 2.5E-04) kdi oc dAqdpi0q1ikc, oi
onoic ncpikAciov1di oc dnoo1pqou (n.y. 'a', 'hello', 'kalimera', '12345', '$@#42a'). Iid 1i
dAqdpi0q1ikc o1d0cpc cv undpyouv ncpiopiooi oyc1ikd c 1o ncpicycv 1ou (nopci vd
civdi onoioqno1c ooAo q ypdd oc onoidqno1c yAoood).
KdA ndv1o civdi vd ypqoionoici1c vo 1o Ad1ivik nAqk1poAyio yid1i oc ncpin1ooq nou
ypqoionoiq0ci oc cv1oAq ydpdk1qpd dn 1o cAAqvik nAqk1poAyio 0d uokoAcu1ci1c vd
cv1onioc1c nou civdi 1o Ad0o (n.y. To I 1o Ad1ivik civdi 1o iio c 1o I 1o cAAqvik).
Zqdv1ik o1oiycio yid cvd npypdd civdi q ndpq oyoAiov, 1d onoid cA1iovouv 1qv
dvdyvooi1q1d 1ou nqydiou koikd kdi kdvouv 1q ouv1qpqoq 1ou nio ckoAq. Td oyAid
ncpikAciov1di oc dykio1pd, n.y. {Au1 civdi 1o npo1o oyAio}, q oc ndpcv0coci c do1cpioko,
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 11
-
n.y. (*Au1 civdi 1o c1cpo oyAio *), kdi ndivouv onouqno1c o1o npypdd, yopi
ncpiopioo oyc1ikd c 1o ncpicycv 1ou.

T T n no oi i A Ac c o o c cv v v v o o1 1q qv v P Pa as sc ca al l
tvd 1no o1qv Pascal, kdi oc noAAc dAAc qoqiAci yAoooc npoypdd1ioo, kd0opi(ci
id c1dAq1q c 1c1oio 1pno nou kd1' dpyqv npooiopi(ci 1o cpo 1ov 1iov nou civdi ikdvq
vd dno0qkcoci, kdi cnioq kd0opi(ci cvd ovoAo dn Aci1oupyic nou civdi cni1pcn1 vd
cqdpoo0ov ndvo o1i c1dAq1c du1o 1ou 1nou.

Integer OAoi oi dpi0oi o1o ido1qd dn -32768 co 32767
Byte OAoi oi dkcpdioi dn 0 co 255
Real OAoi oi npdyd1ikoi dpi0oi dn 1E-38 co 1E+38
Boolean Mnopci vd cyci vo 1ic TRUE kdi FALSE
Char OAoi oi ydpdk1qpc 1ou koikd ASCII
Shortint OAoi oi dkcpdioi dn -128 co 127
Word OAoi oi dkcpdioi dn 0 co 65535
Longint OAoi oi dkcpdioi dn -2147483648 co 2147483647
Single OAoi oi npdyd1ikoi c 7 oqdv1ikd qqqid
Double OAoi oi npdyd1ikoi c 15 oqdv1ikd qqqid
Extended OAoi oi npdyd1ikoi c 19 oqdv1ikd qqqid
Comp OAoi oi dkcpdioi dn -10E18 co 10E18
H Pascal id0c1ci cvood1ocvou 1pci doiko 1nou cocvov, 1d dpi0q1ikd cocvd,
1d cocvd ydpdk1qpd kdi 1d Aoyikd cocvd.
Z1ou dpi0q1iko 1nou ncpiAddvov1di:
Hpdyd1iko dpi0o: Z1qv Pascal oi npdyd1ikoi dpi0oi qAovov1di o real (id
c1dAq1q du1o 1ou 1nou kd1dAddvci 6 bytes o1q vqq), single (4 bytes), double
(8 bytes) kdi extended (10 bytes). Ooo cydA1cpo yopo kd1dAddvci cvd
npdyd1ik dpi0 o1q vqq, 1oo cydA1cpo 0d nopci vd civdi kdi cydA1cpq
dkpicid vd cyci.
Akcpdioi dpi0o: Z1qv Pascal oi dkcpdioi dpi0oi qAovov1di o integer (id
c1dAq1q du1o 1ou 1nou kd1dAddvci 16 bits, ck 1ov onoiov 1o cvd bit
ypqoionoici1di o npoqo, dpd oi 1ic nou nopci vd ndpci civdi dn -215 = -32768
cypi 215 - 1 =32767), shortint 98 bits c npoqo kdi c 1ic dn -128 cypi 127),
longint (32 bits c npoqo kdi c 1ic dn -2.147.483.648 cypi 2.147.483.647),
byte (8 bits yopi npoqo kdi c 1ic dn 0 cypi 255) kdi word (16 bits yopi
npoqo kdi c 1ic dn 0 cypi 65535).
Td cocvd 1nou ydpdk1qpd idkpivov1di oc cocvd cv ydpdk1qpd char kdi oc cocvd
noAAov ydpdk1qpov string, nou nopci vd civdi dn 1 cypi 255 ydpdk1qpc.
Td Aoyikd cocvd qAovov1di o1qv Pascal o boolean kdi cyouv 1o ydpdk1qpio1ik 1i
nopov vd ndpouv o 1ic, 1i TRUE (dAq0q) kdi FALSE (qcuq).
Oi 1noi integer, char kdi boolean Acyov1di kdi 1dk1ikoi 1noi, yid1i undpyci id1dq c1d
1ov cAov 1ou (kd0cvd dn 1d cAq cyci npoqyocvo kdi cncvo). Mc doq du1o 1ou
1nou, nopov vd oyqd1io1ov kdi ov0c1oi 1noi, qAdq odc cocvov, no oi
nvdkc (array) kdi oi cyypdqc (record).
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 12
-
EninAcov, o npoypdd1io1q cyci 1q uvd11q1d vd opioci kdi iko 1ou 1nou cocvov,
ypqoionoiov1d o1o 1qd qAoocov 1q cocucvq Acq type. Iid ndpdciyd, c 1q
qAooq type month_number = 1..12; opi(c1di cvd vco 1no cocvov c vod
month_number. Oi c1dAq1c 1ou 1nou du1o 0d ndipvouv dkcpdic 1ic dn 1 cypi 12. O
ouoAio .. qAovci ido1qd dn - co.

T Tc cA Ac co o1 1c c 1 1q q P Pa as sc ca al l
Oi 1cAco1c 1q Pascal idkpivov1di oc 1coocpi kd1qyopic:
Api0q1ikoi 1cAco1c:
+ : Hpo0coq
- : Aqdipcoq
* : HoAAdnAdoido
/ : Aidipcoq
div : HqAiko dkcpdid idipcoq
mod : YnAoino dkcpdid idipcoq

TcAco1c oykpioq:
> : McydA1cpo
>= : McydA1cpo q ioo
< : Mikp1cpo
<= : Mikp1cpo q ioo
= : 1oo
<> : Aidqopo

Aoyikoi TcAco1c:
AND : KAI
OR : 1
NOT : OXI

TcAco1q dvd0coq 1iq:
O 1cAco1q du1 civdi o := kdi ypqoionoici1di yid dnooq 1iq oc id c1dAq1q. Iid
ndpdciyd, c 1qv cv1oAq x:=5; Aivc1di o1q c1dAq1q x q 1iq 5. O 1cAco1q du1 civdi
udik, qAdq cyci o 1cAco1cou, cvdv dpio1cpd 1ou kdi cvdv cid 1ou. O dpio1cpd
1cAco1co civdi unoypco1ikd 1o vod id c1dAq1q, cvo cid 1cAco1co nopci vd civdi 1o
vod id dAAq c1dAq1q, id o1d0cpd q id ckqpdoq. Oi o 1cAco1coi npcnci ouvq0o vd
civdi 1ou iiou 1nou (n.y. kdi oi o dkcpdioi - integer).
Zqcooq: Z1d d0qd1ikd cv ioyci x=x+1, o1ov npoypdd1io o ioyci 1o x:=x+1.
Apio1cpd dn 1o := civdi ndv1d 1o dyvoo1o cpo 1o onoio 0d ndpci 1iq cvo cid 1o yvoo1
cpo. O1dv Acnouc id c1dAq1q vd civdi kdi dn 1q cid cpid 1ou := kdi dn 1qv
dpio1cpq dpyikonoioc (ivouc dpyikq 1iq) nio npiv oc du1q 1qv c1dAq1q.

A Ao o q q c cv v n np po oy yp p d d1 1o o o oc c P Pa as sc ca al l
tvd npypdd oc yAoood Pascal dno1cAci1di dn o 1qd1d: 1o 1qd qAocv
(declaration part) kdi 1o od 1ou npoypd1o (program body).
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 13
-
To 1qd qAoocov ncpiAddvci 1q qAooq 1ou ovd1o 1ou npoypdd1o (n.y. PROGRAM
MY_FIRST_PROGRAM;), 1q qAooq 1ov c1cpikv ovv nou 0d ypqoionoiq0ov (n.y.
USES CRT;), 1i qAooci 1ov 1nv (n.y. TYPE MONTH = 1..12;), 1i qAooci 1ov
o1d0cpv (n.y. CONST LIMIT = 50;) kdi 1ov c1dAq1v (n.y. VAR X: INTEGER;), dAAd kdi
1ou opioo 1ov ouvdp1qocv (function) kdi idikdoiv (procedure).
To ood 1ou npoypdd1o dpyi(ci c 1q cocucvq Acq BEGIN kdi 1cAciovci c 1q
cocucvq Acq END., ncpikAciov1d dvdcod 1ou 1i ck1cAcoic cv1oAc 1ou
npoypdd1o.
H oAokAqpocvq oq cv npoypdd1o Pascal civdi:
PROGRAM <.oc nbobc:o>;
USES <s_.:sb.ks o.5s nou bno.ono.s :o nbbcc>;
CONST <:nc 5nX.on o:c0sb. :ou nbobc:o>;
TYPE <:nc 5nX.on :n.. :ou nbobc:o>;
VAR <:nc 5nX.on s:cXn:. :ou nbobc:o>;
<:nc 5nX.on ou.cb:nos.. kc. 5.c5.kco..>;
BEGIN {s.cb_n oc:o kub. nbobc:o}
<s.:oXs kub. nbobc:o>;
END.

E Ev v1 1o oA Ac c 1 1q q P Pa as sc ca al l
Z1qv Pascal undpyouv 1pci doikc npoypdd1io1ikc oc:
[1] H oq 1q dkoAou0d 1ov cv1oAov, o1qv onoid oi cv1oAc ck1cAov1di c 1q ocipd
nou dvdypdqov1di kdi kd1c0uvoq dn ndvo npo 1d kd1o.
[2] H oq 1q cniAoyq q dnqdoq, o1qv onoid o cAcyyo 1q poq 1ou npoypdd1o
dnoqdoi(c1di dn 1qv 1iq id Aoyikq ckqpdoq. Av q 1iq 1q Aoyikq ckqpdoq civdi
dAq0q (TRUE) ck1cAci1di 1o 1qd A 1ou npoypdd1o, dv civdi qcuq (FALSE)
ck1cAci1di 1o 1qd B 1ou npoypdd1o.
[3] H oq 1q cndvAqqq, o1qv onoid cvd 1qd 1ou npoypdd1o ck1cAci1di kd1'
cndvdAqqq dvdAoyd c 1qv 1iq id Aoyikq ckqpdoq.
Z1qv Pascal cv undpyci o ncpiopio id cv1oAq oc kd0c ypdq. Mnopoc vd ypdqouc
id cv1oAq oc ncpioo1cpc ypdc q kdi noAAc cv1oAc oc id ypdq. Iid vd idyopi(ov1di
oi cv1oAc c1d 1ou ypqoionoici1di 1o ooAo 1ou cAAqviko cpo1qd1iko (;), 1o onoio
1ono0c1oc o1o 1cAo kd0c cv1oAq. Oi cocucvc Acci BEGIN kdi END ypqoionoiov1di
cnioq o idyopio1c cv1oAov, yi' du1 cv civdi dndpdi1q1o 1o cpo1qd1ik c1d dn 1o
BEGIN kdi npiv dn 1o END.
E Ev v1 1o oA Ac c c ci io o o ou u - - c c o ou u
Iid ciodyoyq cocvov o1o npypdd dn 1o ypqo1q (coo 1ou nAqk1poAoyiou) kdi
cqdvioq 1ov dno1cAcod1ov o1qv o0vq, ypqoionoioc 1i idikdoic cioou kdi cou
(procedures) read kdi write (q readln kdi writeln, 1dv 0cAouc vd idd(ci d(i c 1qv 1iq
nou 0d ooouc kdi 1o enter, q vd dAAd(ci ypdq c1d 1qv ck1cAcoq 1q writeln, dv1io1oiyd).
H writeln civdi id ciikq Acq nou cni1pcnci vd cqdvio1ov kdnoid cocvd o1qv o0vq 1ou
unoAoyio1q d. Td cocvd cod o1qv ndpcv0coq civdi 1d cocvd nou 0d ck1uno0ov.
Onoidqno1c nAqpoqopid dvdcod o1i dnoo1pqou 0d ck1uno0ci o dnA kcicvo. H ciikq
Acq writeln cv civdi cocucvq Acq dAAd civdi kd0opiocvq dn 1o oo1qd vd kdvci id
ciikq ouAcid yid od, qAdq vd ck1unovci id ypdq dn cocvd o1qv o0vq. H cv1oAq
write ypqoionoici1di yid ck1nooq o1qv o0vq, no kdi c q writeln, dAAd o kcpoopd cv
dAAd(ci ypdq o1qv coo. H writeln ypdqci 1o npo ck1nooq kcicvo kdi dAAd(ci ypdq, q
write yi.
Hdpdcyd1d
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 14
-
read(a); Aidd(ci 1q c1dAq1q a. O ypqo1q npcnci vd ooci dn 1o nAqk1poAyio 1ou H/Y
id 1iq yid 1q c1dAq1q a. Av q c1dAq1q cyci qAo0ci integer 0d npcnci o ypqo1q vd
ooci dkcpdid 1iq yid 1o a.
read(a,b); O ypqo1q 0d npcnci vd ooci dn 1o nAqk1poAyio 1ou H/Y uo 1ic yopiocvc
c cvd kcv.
write('KALHMERA'); Eqdvi(ci o1qv o0vq 1q Acq KALHMERA kdi o pocd piokc1di
dkpio inAd dn 1q Acq.
write('KALHMERA '); Eqdvi(ci o1qv o0vq 1q Acq KALHMERA kdi o pocd piokc1di c
cvd kcv inAd dn 1q Acq.
writeln('KALHMERA'); Eqdvi(ci o1qv o0vq 1q Acq KALHMERA kdi o pocd nqydivci o1qv
dkpio dn kd1o ypdq dn 1q Acq.
write('A = ',a); Eqdvi(ci o1qv o0vq 1q Acq A = kdi dcoo c1d 1qv 1iq 1q c1dAq1q
a. To oyAio dn 1q c1dAq1q yopi(c1di c cvd kd.
write(a:5:2); Eqdvi(ci o1qv o0vq 1q 1iq 1ou npdyd1iko dpi0o a oc ncv1c 0coci, dn
1i onoic oi o civdi 1d ckdikd qqqid kdi q id q unoido1oAq. Av oi 0coci nou cvouv cv
cndpkov yid 1o dkcpdio cpo, 0d ypqoionoiq0ov ncpioo1cpc yopi kdid ndpcdoq dn
1ov ypqo1q.
writeln(1,3*3,4+2,6-1); Eqdvi(ci o1qv o0vq 1i 1ic 1 9 6 kdi 5 yopi kcvd c1d 1ou
kdi o pocd nqydivci o1qv dn kd1o ypdq.
writeln(1,' ',2,' '3*2); Eqdvi(ci o1qv o0vq 1i 1ic 1 2 kdi 5 c cvd kcv c1d 1ou kdi o
pocd nqydivci o1qv dn kd1o ypdq.
writeln(a+b); Eqdvi(ci o1qv o0vq 1qv 1iq 1ou d0poiod1o a+b kdi o pocd nqydivci
o1qv dn kd1o ypdq.
writeln('a+b'); Eqdvi(ci o1qv o0vq 1q Acq (oyAio) a+b kdi o pocd nqydivci o1qv dn
kd1o ypdq.

A Ao o q q A Ak ko oA Ao ou u0 0 d d
Z1q oq dkoAou0id oi cv1oAc ck1cAov1di q id c1d 1qv dAAq c 1q ocipd nou
dvdypdqov1di kdi kd1c0uvoq dn ndvo npo 1d kd1o.
s.:oXn 1;
s.:oXn 2;
...
s.:oXn n;

Hdpdciyd
Nd ypdqci npypdd oc yAoood Pascal 1o onoio unoAoyi(ci kdi cqdvi(ci 1o cdv
1pdnc(iou, 1dv ivov1di oi doci kdi 1o qo 1ou. To cdv 1pdnc(iou ivc1di dv
noAAdnAdoidoouc 1o qid0poiod 1ov docov cni 1o qo.
PROGRAM PARADEIGMA_1;
VAR B1,B2,Y:INTEGER;
E,HA:REAL;
BEGIN
WRITE('DOSE BASH TRAPEZIOY MEGALH ');
READLN(B1);
WRITE('DOSE BASH TRAPEZIOY MIKRH ');
READLN(B2);
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 15
-
WRITE('DOSE YPSOS TRAPEZIOY ');
READLN(Y);
HA := (B1+B2)/2;
E := HA * Y;
WRITELN('TO EMBADON TOY TRAPEZIOY EINAI : ',E:5:2);
END.

H H c cv v1 1o oA Aq q - - I IF F
AHAH EHIAOFH
H cv1oAq ypqoionoici 1pci cocucvc (IF, THEN, ELSE). Mc1d 1o IF dkoAou0ci q ouv0qkq,
q onoid 1cAciovci npiv dn 1q cocucvq Acq THEN. Mc1d 1o THEN kdi npiv dn 1q Acq
ELSE, ypdqc1di q cv1oAq1 q oi cv1oAc 1q odd 1. H cv1oAq2 q oi cv1oAc 1q odd 2
ypdqov1di dcoo c1d 1q oq0q1ikq Acq ELSE.
IF <ou.0nkn> THEN
s.:oXn1;
ELSE
s.:oXn2;

Zqcooq: Av undpyouv ncpioo1cpc dn id cv1oAc npcnci vd 1i dAouc dvdcod oc
BEGIN ... END

IF <ou.0nkn> THEN
BEGIN
o5c s.:oX. 1;
END;
ELSE
BEGIN
o5c s.:oX. 2;
END;

H oq cniAoyq ck1cAci1di o cq: Apyikd cAcyyc1di q ouv0qkq. Z1q ouvcycid undpyouv o
uvd1c ncpin1ooci:
Av q ouv0qkq ikdvonoici1di (q dndv1qoq civdi vdi), ck1cAci1di vo q cv1oAq1 q q odd
cv1oAov 1. H cv1oAq2 q odd cv1oAov 2 dyvoci1di kdi o cAcyyo 1ou dAypi0ou
ydivci dn 1q oq cniAoyq.
Zc dv1i0c1q ncpin1ooq, dv qAdq q ouv0qkq cv ikdvonoici1di (q dndv1qoq civdi yi),
c Addvc1di unqq q cv1oAq1 q q odd cv1oAov 1. Ek1cAci1di vo q cv1oAq2 q q
odd cv1oAov 2 kdi q ck1cAcoq 1q oq cniAoyq 1cAciovci.

Hdpdciyd
Nd ypdqci npypdd oc yAoood Pascal 1o onoio vd idd(ci o dpi0o A kdi B vd 1ou
ouykpivci kdi vd cqdvi(ci noio civdi cydA1cpo.
{HPOTOZ TPOHOZ AYZHZ}

PROGRAM PARADEIGMA_2A;
VAR A,B:INTEGER; C:STRING;
BEGIN
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 16
-
WRITE('DOSE ARITHMO A ');
READLN(A);
WRITE('DOSE ARITHMO B ');
READLN(B);
IF A > B THEN
BEGIN
C := 'O ARITHMOS A EINAI MEGALYTEROS TOY B ';
WRITELN(C);
END;
ELSE
BEGIN
C := 'O ARITHMOS B EINAI MEGALYTEROS TOY A ';
WRITELN(C);
END;
END.

{MHOPOYME NA BAAOYME THN ENTOAH WRITELN( ) MONO MIA IOPA ME TO
TEAOZ THZ ENTOAHZ AHOIAZHZ IF}
{AEYTEPOZ TPOHOZ AYZHZ}

PROGRAM PARADEIGMA_2B;
VAR A,B:INTEGER;
C:STRING;
BEGIN
WRITE('DOSE ARITHMO A ');
READLN(A);
WRITE('DOSE ARITHMO B ');
READLN(B);
IF A > B THEN
C := 'O ARITHMOS A EINAI MEGALYTEROS TOY B '
ELSE
C := 'O ARITHMOS B EINAI MEGALYTEROS TOY A ';
WRITELN(C);
END.

HEPIOPIZMENH EHIAOFH
Yndpyci ncpin1ooq oc id cv1oAq cniAoyq, o1q ncpin1ooq nou ioyci q ouv0qkq, vd ck1cAci1di
id cv1oAq q id ocipd cv1oAov, cvo o1qv ncpin1ooq nou cv ioyci q ouv0qkq vd q 0cAouc
vd ck1cAco1ci kdnoid cv1oAq q cv1oAc. Z1q ncpin1ooq du1q ypqoionoioc 1q oq
ncpiopiocvq cniAoyq.
IF <ou.0nkn> THEN
s.:oXn 1;
IF <ou.0nkn> THEN
BEGIN
o5c s.:oX. 1;
END;
Z1q oq ncpiopiocvq cniAoyq, q cocucvq Acq ELSE, kd0o kdi q cv1oAq2 q q odd
cv1oAov 2 ndpdAcinov1di.

Hdpdciyd
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 17
-
Nd ypdqci npypdd oc yAoood Pascal 1o onoio vd idd(ci 1o d0 d0qd1o cv
onoudo1q. Av o d0 civdi cydA1cpo q ioo 1ou 5 vd cqdvi(ci 1o qvud 1i ncpdoc 1o
d0qd.
PROGRAM PARADEIGMA_3;
VAR N:INTEGER;
L:STRING;
BEGIN
WRITE('DOSE BATHMO SPOYDASTH ');
READLN(N);
IF N >= 5 THEN
BEGIN
L := 'O SPOYDASTHS PERASE TO MATHIMA';
WRITELN(L);
END;
END.

H H c cv v1 1o oA Aq q - - C CA AS SE E
Zc noAAc ncpin1ooci, undpyouv ncpioo1cpc cvdAAdk1ikc cniAoyc, nou cdp1ov1di dn 1qv
1iq id c1dAq1q. Z1i ncpin1ooci du1c, ypqoionoici1di q cv1oAq case, nou cyci 1qv
ndpdkd1o opqq:
CASE <skobcon> OF
<:.n 1>: <s.:oXn 1>;
<:.n 2>: <s.:oXn 2>;
...
<:.n n>: <s.:oXn n>;
END;
YnoAoyi(c1di q ckqpdoq kdi ouykpivc1di c kd0c 1iq 1q Aio1d 1ov ni0dvov 1iov 1q
ckqpdoq. Ek1cAci1di ckcivq q cv1oAq, o1qv onoid q 1iq ounin1ci c 1qv 1iq 1q ckqpdoq,
kdi o cAcyyo 1ou npoypdd1o c1dqcpc1di o1qv cv1oAq nou dkoAou0ci 1o end. H ckqpdoq
kdi oi ni0dvc 1ic 1q npcnci dndpdi1q1d vd civdi 1dk1iko 1nou.
Z1qv cv1oAq case nopci vd undpyci npiv 1o end id cvdAAdk1ikq cv1oAq nou 0d ck1cAco1ci
1dv kdid 1iq cv ounin1ci c 1qv 1iq 1q ckqpdoq. H cv1oAq du1q ouv1dooc1di c else:
CASE <skobcon> OF
<:.n 1>: <s.:oXn 1>;
<:.n 2>: <s.:oXn 2>;
...
<:.n k>: <s.:oXn k>
ELSE <s.:oXn n>;
END;
Zqcooq: Av undpyouv ncpioo1cpc dn id cv1oAc npcnci vd 1i dAouc dvdcod oc
BEGIN ... END.

Hdpdciyd
Nd ypdqci npypdd oc yAoood Pascal 1o onoio vd idd(ci cvd dkcpdio dpi0 N dn 1o 1
cypi 1o 12 kdi vd cqdvi(ci 1ov dv1io1oiyo qvd 1ou c1ou (1 yid Idvoudpio, 2 yid
Ocpoudpio, ..., 12 yid Ackcpio).
PROGRAM PARADEIGMA_4;
USES CRT;
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 18
-
VAR I:INTEGER;
BEGIN
CLRSCR;
WRITE('DOSE ARITHMO 1- 12 GIA NA EMFANISTEI O KATALLHLOS MHNAS ');
READLN(I);
CASE I OF
1: WRITELN('IANOYARIOS ');
2: WRITELN('FEBROYARIOS ');
3: WRITELN('MARTIOS ');
4: WRITELN('APRILIOS ');
5: WRITELN('MAIOS ');
6: WRITELN('IOYNIOS ');
7: WRITELN('IOYLIOS ');
8: WRITELN('AYGOYSTOS ');
9: WRITELN('SEPTEMBRIOS ');
10: WRITELN('OKTOBRIOS ');
11: WRITELN('NOEMBRIOS ');
12: WRITELN('DEKEMBRIOS ');
ELSE
WRITELN('MH APODEKTOS ARITHMOS GIA MHNA ');
END;
END.

E Ev v1 1o oA Ac c E En nd dv v A Aq qq qq q ( (H H c cv v1 1o oA Aq q F FO OR R) )
O1dv cvdi yvoo1 ck 1ov npo1cpov o dpi0 1ov cndvdAqcov, nopci vd ypqoionoiq0ci q
cv1oAq cndvdAqqq FOR, q onoid nopci vd cyci id dn 1i dkAou0c opqc:
FOR <mm>:=<aa> TO <bb> DO <s.:oXn1>;
FOR <mm>:=<aa> DOWNTO <bb> TO <s.:oXn1>;
FOR <mm>:=<aa> TO <bb> DO
Begin
o5c s.:oX.;
End;
Eo ypqoionoiov1di oi cocucvc Acci FOR, TO (DOWNTO), DO kdi oi c1dAq1c-
o1d0cpc mm (c1pq1q), aa (dpikq 1iq), bb (1cAikq 1iq). Onoidqno1c dnAq c1dAq1q
c 1no integer, byte q char nopci vd ypqoionoiq0ci o cik1q cndvdAqqq c 1qv
npon0coq 1i npcnci vd undpyci c1dAq1q nou vd civdi qAocvq o var.
Au1q q opqq 1q cndvdAqn1ikq oq cyci 1o ydpdk1qpio1ik 1i cv dndi1ci1di o1qv odd
cv1oAov vd undpyouv cv1oAc c1doAq 1q 1iq 1ou c1pq1q, q onoid c1ddAAc1di dn 1qv
iid 1qv cv1oAq oc kd0c cndvdAqqq kd1d 1 o1qv ncpin1ooq 1ou TO q kd1d -1 1dv undpyci 1o
DOWNTO.

Hdpdciyd
Nd ypdqci npypdd oc yAoood Pascal 1o onoio vd unoAoyi(ci kdi vd 1unovci 1o coo po, 1o
d0poiod kdi 1o yivcvo 1ov dpi0ov dn 1o 1 co 1o N.
PROGRAM PARADEIGMA_5;
VAR I,N,SUM:INTEGER; GIN:LONGINT; MO:REAL;
BEGIN
WRITE('DOSE ARITHMO N EOS TO 10 : ');
READLN(N);
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 19
-
SUM := 0;
GIN := 1;
FOR I:=1 TO N DO
BEGIN
SUM := SUM + I;
GIN := GIN * I;
END;
MO := SUM / N;
WRITELN('TO ATHROISMA EINAI : ',SUM);
WRITELN('TO GINOMENO EINAI : ',GIN);
WRITELN('O MESOS OROS EINAI : ',MO:5:3);
END.

Hcpin1oci o1i onoc cv nopc vd pqoionoiq0c q cv1oAq cndvAqqq for
Hdpdciyd
Nd ypdqci npypdd oc yAoood Pascal 1o onoio vd idd(ci co 10 dkcpdiou dpi0o, vd
unoAoyi(ci kdi vd 1unovci (d) 1o coo po 1ou kdi () nooi dn du1o civdi 0c1ikoi, nooi
dpvq1ikoi kdi nooi qcv. Av iddoci 1ov dpi0 100 vd o1dd1dci q ck1cAcoq 1ou.
PROGRAM PARADEIGMA_6;
VAR N,AR,POS,NEG,ZER,I,SUM:INTEGER;
MO:REAL;
BEGIN
SUM := 0;
POS := 0;
NEG := 0;
ZER := 0;
I := 0;
WRITE('DOSE ARITHMO ');
READLN(AR);
WHILE (I < 10) AND (AR <> 100) DO
BEGIN
SUM := SUM + AR;
IF AR > 0 THEN
POS := POS + 1
ELSE IF AR < 0 THEN
NEG := NEG + 1
ELSE
ZER := ZER + 1;
I := I + 1;
WRITE('DOSE ARITHMO ');
READLN(AR);
END;
IF I > 0 THEN
BEGIN
MO := SUM / I;
WRITELN('O MESOS OROS EINAI ',MO:5:2);
END;
WRITELN('OI THETIKOI EINAI ',POS);
WRITELN('OI ARNHTIKOI EINAI ',NEG);
WRITELN('MHDEN EINAI ',ZER);
END.

!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 20
-
E Ev v1 1o oA Ac c E En nd dv v A Aq qq qq q ( (H H c cv v1 1o oA Aq q W WH HI IL LE E - - D DO O) )
H ov1dq 1q cv1oAq nopci vd cyci id dn 1i dkAou0c opqc:
WHILE <ou.0nkn> DO
<s.:oXn1>;
WHILE <ou.0nkn> DO
Begin
o5c s.:oX.;
End;
Eo ypqoionoiov1di oi cocucvc Acci WHILE, DO. Mc1d 1q Acq WHILE dkoAou0ci q
ouv0qkq ouvcycid. Acoo c1d 1qv Acq DO ypdqc1di q cv1oAq q q odd cv1oAov. Oi
ouv0qkc nou ypqoionoiov1di co civdi iic c 1i ouv0qkc nou ypqoionoiov1di o1qv
cv1oAq cniAoyq.
Z1qv dpyq 1q ck1cAcoq cAcyyc1di q ouv0qkq. Av du1q ikdvonoici1di, 11c ck1cAci1di q cv1oAq
q q odd cv1oAov. Z1q ouvcycid, cAcyyc1di dvd q ouv0qkq. Acv civdi oiyoupo 1i du1q
cdkoAou0ci vd civdi dAq0q i1i 1o dno1cAcod 1q nopci vd cyci cnqpcdo1ci dn 1qv
ck1cAcoq 1q cv1oAq q 1q odd cv1oAov. Av q ouv0qkq ikdvonoici1di dvd, ck1cAci1di ndAi
q cv1oAq q q odd cv1oAov. H idikdoid ouvcyi(c1di, oo q ouv0qkq ndpdcvci dAq0q. O1dv
q ouv0qkq ouvcycid yivci qcuq, q cv1oAq q q odd cv1oAov cv ck1cAci1di kdi 11c Aqyci q
ck1cAcoq 1q oq.

Hdpdciyd
Nd ypdqci npypdd oc yAoood Pascal 1o onoio vd unoAoyi(ci kdi vd 1unovci 1o coo po, 1o
d0poiod kdi 1o yivcvo 1ov dpi0ov dn 1o 1 co 1o N.
PROGRAM PARADEIGMA_7;
VAR I,N,SUM:INTEGER; GIN:LONGINT; MO:REAL;
BEGIN
WRITE('DOSE ARITHMO N EOS TO 10 : ');
READLN(N);
SUM := 0; GIN := 1; I := 1;
WHILE I <= N DO
BEGIN
SUM := SUM + I;
GIN := GIN * I;
I := I + 1;
END;
MO := SUM / N;
WRITELN('TO ATHROISMA EINAI : ',SUM);
WRITELN('TO GINOMENO EINAI : ',GIN);
WRITELN('O MESOS OROS EINAI : ',MO:5:3);
END.

E Ev v1 1o oA Ac c E En nd dv v A Aq qq qq q ( (H H c cv v1 1o oA Aq q R RE EP PE EA AT T - - U UN NT TI IL L) )
H ov1dq 1q cv1oAq nopci vd cyci id dn 1i dkAou0c opqc:
REPEAT
<s.:oXn1>;
UNTIL <ou.0nkn>;
REPEAT
o5c s.:oX.;
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 21
-
UNTIL <ou.0nkn>;
Eo ypqoionoiov1di oi cocucvc Acci REPEAT, UNTIL. Mc1d 1q Acq REPEAT
dkoAou0ov oi cv1oAc oi onoic 1cAciovouv npiv dn 1q Acq UNTIL. Kdi o1q ncpin1ooq du1q,
oi ouv0qkc nou ypqoionoiov1di civdi iic c 1i ouv0qkc nou ypqoionoiov1di o1qv
cv1oAq cniAoyq. H cv1oAq 1cAciovci c 1o UNTIL <ouv0qkq>.
Zc du1q 1q opqq 1q cv1oAq cndvdAqqq o cAcyyo yivc1di c1d 1qv ck1cAcoq 1q odd
cv1oAov. Au1 oqdvci ouoido1ik 1i q od cv1oAv ck1cAc1di 1ouAio1ov d
qop. Mc1d 1qv ck1cAcoq 1q odd cv1oAov cAcyyc1di q ouv0qkq. Av du1q cv
ikdvonoici1di, 11c ck1cAci1di dvd q odd cv1oAov, oo q ouv0qkq ndpdcvci qcuq. O1dv q
ouv0qkq yivci dAq0q, Aqyci q ck1cAcoq 1q cndvdAqn1ikq oq.

Hdpdciyd
Nd ypdqci npypdd oc yAoood Pascal 1o onoio vd unoAoyi(ci kdi vd 1unovci 1o coo po,1o
d0poiod kdi 1o yivcvo 1ov dpi0ov dn 1o 1 co 1o N.
PROGRAM PARADEIGMA_8;
VAR I,N,SUM:INTEGER; GIN:LONGINT; MO:REAL;
BEGIN
WRITE('DOSE ARITHMO N EOS TO 10 : ');
READLN(N);
SUM := 0; GIN := 1; I := 1;
REPEAT
SUM := SUM + I;
GIN := GIN * I;
I := I + 1;
UNTIL I > N;
MO := SUM / N;
WRITELN('TO ATHROISMA EINAI : ',SUM);
WRITELN('TO GINOMENO EINAI : ',GIN);
WRITELN('O MESOS OROS EINAI : ',MO:5:3);
END.

A Ai id d i ik kd do o c c K Kd di i Z Zu uv vd dp p1 1q qo oc ci i
Ti ncpioo1cpc qopc cvd cydAo npypdd nopci vd yivci c 1q qioupyid noAAov
ikp1cpov unonpoypdd1ov. Au1 d npooqcpci dpkc1d nAcovck1qd1d no:
H ouv1qpqoq 1ov npoypdd1ov yivc1di cukoA1cpq.
H uvd11q1d ypqoq 1ov unonpoypdd1ov nou ck1cAov ouvq0iocvc cpydoic
nopov vd c1dqcp0ov kdi oc dAAd npoypdd1d - cqdpoyc.
H oq 1ou npoypdd1o yivc1di ckoAd kd1dvoq1q.
H uvd11q1d dvdn1uq ikp1cpov npoypdd1ov dn dvcdp1q1ou npoypdd1io1c,
c okon 1q cA1iooq 1ou ypvou dvdn1uq 1ou Aoyioiko.
tvd unonpypdd civdi cvd ovoAo cv1oAov 1q Pascal nou ck1cAci ouykckpicvo cpyo kdi
ypdqc1di c 1ou iiou kdvvc nou ypdqc1di cvd npypdd. H Pascal d ivci 1q
uvd11q1d vd cyouc o ciq unonpoypdd1ov: 1i idikdoc (procedures) kdi 1i
ouvdp1qoci (functions). H oq 1ou cAdyio1d idqcpci, dAAd ypqoionoiov1di oc
idqopc1ikc ncpin1ooci. Td unonpoypdd1d cv civdi du1o1cAq npoypdd1d yi du1 kdi
cv nopov vd ck1cAco1ov dn vd 1ou.
AqAovov1di c1d 1o 1qd qAoocov 1ou npoypdd1o c1d 1o VAR kdi npiv dn 1o BEGIN
1ou kupio npoypdd1o. (tyouc 1q uvd11q1d vd ypdqouc 1o unonpypdd oc
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 22
-
cyopio1 dpycio kdi vd 1o cvood1ooouc o1qv iid ncpioyq ypqoionoiov1d 1qv idikdoid
$I (Include)).
Td unonpoypdd1d cnikoivovov c 1o kupio npypdd coo ndpdc1pov kdi
ncpiAddvouv cvd ovoAo cv1oAov oi onoic ck1cAov id ouykckpicvq Aci1oupyid. H
idqopd c1d 1ou civdi 1i oi ouvdp1qoci unoAoyi(ouv kdi cnio1pcqouv o1o oqcio 1o onoio
kdAov1di id 1iq, cvo oi idikdoic ck1cAov kdnoic Aci1oupyic c1ddAAov1d kdnoic
c1dAq1c yopi vd cnio1pcqouv 1iq o1o oqcio o1o onoio kdAov1di.

A Ai id d i ik kd do o c c - - P Pr ro oc ce ed du ur re es s
H qAooq id idikdoid cyci 1qv nio kd1o opqq:
PROCEDURE <.oc_5.c5.kcoc> (<Xo:c ncbcs:b..>:<:no>);
<Tnc 5nXos.. :on.k. s:cXn:.>
BEGIN
<E.:oXs 5.c5.kcoc>
END;
H Acq PROCEDURE civdi id cocucvq Acq q onoid dkoAou0ci1di dn 1o vod 1q
idikdoid kdi c1d cqdvi(ov1di Ac oi ndpdc1poi kdi o 1no 1ou. Oi ndpdc1poi
ovod(ov1di 1unikc (formal) ndpc1poi. Oi 1unikc ndpdc1poi ivouv 1qv uvd11q1d 1ou
opioo 1ov unoAoyioov id idikdoid c cvd ycvik 1pno. Yndpyci ncpin1ooq vd qv
undpyouv 1unikc ndpdc1poi, yi du1 q ndpcv0coq c 1q Aio1d 1ov 1unikov ndpdc1pov civdi
npodipc1ikq. Oi c1dAq1c nou cqdvi(ov1di o1o 1qd qAoocov 1q idikdoic civdi
1onikc qAdq opi(ov1di vo kd1d 1q idpkcid ck1cAcoq 1q.
O1dv id idikdoid civdi opiocvq o1o 1qd qAoocov 1ou kupio npoypdd1o 11c nopci
vd ypqoionoiq0ci onouqno1c cv1 1ou kupio npoypdd1o c id dnAq kAqoq 1q nou cyci
1q ycvikq opqq:
vod_idikdod (Ao1d npdyd1ikov ndpdc1pov); nou odv vod 1q idikdoid
dvdqcpouc 1o vod 1q idikdoid nou cni0uoc vd ck1cAco1ci kdi dv1ikd0io1ov1d 1q
Aio1d 1ov 1unikv (formal) ndpdc1pv c ckcivq 1ov npdyd1ikv (actual). Oi
npdyd1ikc ndpdc1poi civdi 1ic q c1dAq1c nou dv1inpoooncouv 1ic. H npo1q
npdyd1ikq ndpdc1po dv1io1oiyci c 1qv npo1q 1unikq ndpdc1po, q c1cpq npdyd1ikq c
1q c1cpq 1unikq k.o.k. O dpi0 1ov npdyd1ikov kdi 1unikov ndpdc1pov 0d npcnci vd
civdi dkpio o iio kdi o 1no 1ov 1iov kd0c npdyd1ikq ndpdc1pou 0d npcnci vd civdi
oud1 c 1qv dv1io1oiyq 1unikq ndpdc1po.
Oi o1d0cpc, oi 1noi, oi c1dAq1c kdi oi idikdoic nou qAovov1di o1o 1qd qAoocov
ovod(ov1di ycvikc (global) yid1i nopov vd ypqoionoiq0ov onouqno1c cod o1o kupio
npypdd, oc id idikdoid q kdi oc id idikdoid nou cyci kAq0ci cod dn dAAq idikdoid.
Oi o1d0cpc, c1dAq1c, kAn. nou piokov1di o1o 1qd qAoocov id idikdoid cyouv
ioy vo yid 1q ouykckpicvq idikdoid (unonpypdd) yi du1 ovod(ov1di 1onikc
c1dAq1c.
Od npcnci vd yvopi(ouc 1i id idikdoid nopci vd kdAcoci id dAAq idikdoid cqoov cyci
qAo0ci npiv dn du1q o1o iio unonpypdd. O1dv o npcnci vd kAq0ci id idikdoid
npiv opio0ci, 0d npcnci vd ypqoionoiqoouc 1q qAooq FORWARD. H qAooq du1q
ypqoionoici1di vo yid 1qv dAAdyq 1q 1dq 1ov qAoocov kdi 1ono0c1ci1di npiv dn 1q
idikdoid o1o onoio kdAci1di q idikdoid nou qAovc1di c 1qv FORWARD.

Hdpdcyd1d
[1] Nd ypdqci cvd npypdd 1o onoio iddoci 1qv did kdi 1o nAq0o 1ov cnopcud1ov,
d po1dci dv q noAqoq civdi yovpikq kdi d ivci 1qv ouvoAikq did 1ov cnopcud1ov.
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 23
-
(Eo ypqoionoioc o idikdoic o1i onoic q c1cpq kdAci 1qv npo1q 1dv q noAqoq
cv civdi yovpikq.)
PROGRAM PARADEIGMA_9;
CONST KERDOS = 0.15;
VAR AXIA, SAXIA :REAL;
NUMBER:INTEGER;
XONDRIKH:CHAR;

PROCEDURE TOTAL (VAR P1:INTEGER; VAR P2, P3 :REAL);
BEGIN {total}
P3:= P1 * (P2 + KERDOS * P2)
END; {total}

PROCEDURE AMOUNTDUE(VAR N1:INTEGER;
VAR N2, N3 :REAL; VAR C: CHAR);
BEGIN {amount due}
IF C= 'Y' THEN
N3 := N1 * N2
ELSE
TOTAL(N1,N2,N3)
END; {amount due}

BEGIN {main program}
WRITE('DOSE AXIA EMPOREYMATOS: ');
READLN(AXIA);
WRITE('DOSE PLITHOS EMPOREYMATON: ');
READLN(NUMBER);
WRITE('EINAI XONDRIKH POLHSH; (Y/N) ');
READLN(XONDRIKH);
AMOUNTDUE(NUMBER, AXIA, SAXIA, XONDRIKH);
WRITELN(NUMBER,' EIDH ME EURO ',AXIA:0:2);
WRITELN('SYNOLIKOS LOGARIASMOS EURO ',SAXIA:0:2);
IF XONDRIKH = 'Y' THEN
WRITELN('H POLHSH EINAI XONDRIKH')
ELSE
WRITELN('H POLHSH EINAI LIANIKH ')
END. {main program}

[2] Nd ypdqci npypdd oc yAoood Pascal 1o onoio vd idd(ci 1o qko kdi 1o nAd1o cv
op0oyoviou ndpdAAqAypdou kdi vd unoAoyi(ci kdi vd cqdvi(ci 1o cdv 1ou.
PROGRAM PARADEIGMA_10;
VAR M,P:INTEGER;

PROCEDURE COUNT(VAR LENGTH, WIDTH,AP:INTEGER);
BEGIN
WRITELN('TO ORTHOGONIO PARALLHLOGRAMMO EXEI DIASTASEIS: ');
WRITELN(LENGTH,' EPI ', WIDTH, ' cm ');
WRITELN('EXEI EMBADON ',LENGTH * WIDTH,' TETRAGONIKA cm ');
END;

BEGIN
WRITE('DOSE MHKOS PLEVRAS ');
READLN(M);
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 24
-
WRITE('DOSE PLATOS PLEVRAS ');
READLN(P);
COUNT(M, P);
END.

Z Zu uv vd dp p1 1q qo oc ci i - - F Fu un nc ct ti io on ns s
H qAooq id ouvdp1qoq cyci 1qv nio kd1o opqq:
FUNCTION <.oc_ou.b:non> (<Xo:c_ncbcs:b..>:<:no>):<:no_cno:sXsoc:o>;
<Tnc 5nXos.. :on.k. s:cXn:.>
BEGIN
O5c s.:oX.;
.oc_ou.b:non := ncbo:con
END;
H Acq FUNCTION civdi id cocucvq Acq q onoid dkoAou0ci1di dn 1o vod 1q
ouvdp1qoq. AkoAou0ov oi 1unikc (formal) ndpdc1poi kdi o 1no 1ou kd0opi(c1di o1q
Aio1d 1ov 1unikov ndpdc1pov. OAc oi ndpdc1poi nou cqdvi(ov1di cod o1i ndpcv0coci
ovod(ov1di 1unikc ndpdc1poi n.y. o1q ouvdp1qoq ABS(X), q ndpdc1po X civdi id 1unikq
ndpdc1po. Oi 1unikc ndpdc1poi ivouv 1qv uvd11q1d 1ou opioo 1ov unoAoyioov id
ouvdp1qoq c cvd ycvik 1pno. Enciq undpyci ncpin1ooq vd qv undpyouv 1unikc
ndpdc1poi, yi du1 q ndpcv0coq c 1q Aio1d 1ov 1unikov ndpdc1pov civdi npodipc1ikq. Mc1d
1q cid ndpcv0coq 1q Aio1d 1ov 1unikov ndpdc1pov dkoAou0ci o 1no 1ou dno1cAcod1o
nou Addvci q ouvdp1qoq dqo npoqyq0ci 1o ooAo :
Oi cv1oAc nou undpyouv oc id ouvdp1qoq nopci vd civdi ci1c id vo cv1oAq ci1c
ncpioo1cpc cv1oAc. Od npcnci o vd undpyci id cv1oAq 1q opqq
vod_ouvdp1qoq:= ndpdo1doq, yid1i q kAqoq 1ou unonpoypdd1o ouvdp1qoq
dv1inpoooncci id 1iq, q onoid ivc1di o1o vod 1q c 1qv ndpdndvo cv1oAq.

Hdpdcyd1d
[1] Nd ypdqci cvd npypdd nou vd ypqoionoici id ouvdp1qoq q onoid vd ivci 1o
1c1pdyovo cv dpi0o.
PROGRAM PARADEIGMA_11;
VAR N:INTEGER;

FUNCTION SQUARE(X:INTEGER):INTEGER;
BEGIN{square}
SQUARE:=X*X;
END;{square}

BEGIN{main program}
N:=SQUARE(4);
WRITELN('4 SQUARED IS ', N);
WRITELN('5 SQUARED IS ', SQUARE(5));
END.{main program}

----------------------------------------------------------------------
To cno:sXsoc nou 0c nbous c. :bs_ous :o nbbc c s.c. :o n.o
k:.:
----------------------------------------------------------------------
4 SQUARED IS 16
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 25
-
5 SQUARED IS 25

[2] Nd ypdqci npypdd oc yAoood Pascal 1o onoio vd idd(ci uo dkcpdiou dpi0o kdi
vd unoAoyi(ci kdi vd 1unovci 1o Mcyio1o Koiv Aidipc1q kdi 1o EAdyio1o Koiv HoAAdnAdoio.
PROGRAM PARADEIGMA_12;
VAR AR1,AR2:INTEGER;

FUNCTION MKD(X,Y:INTEGER):INTEGER;
BEGIN{MKD}
WHILE X<>Y DO
BEGIN
IF X>Y THEN
X:=X-Y
ELSE
Y:=Y-X;
END;
MKD:=X;
END;{MKD}

FUNCTION EKP(X,Y:INTEGER):INTEGER;
BEGIN{EKP}
EKP:=(X*Y) DIV MKD(X,Y);
END;{EKP}

BEGIN{MAIN PROGRAM}
WRITE('DOSE TO PROTO AKERAIO ARITHMO ');
READLN(AR1);
WRITE('DOSE TO DEYTERO AKERAIO ARITHMO ');
READLN(AR2);
WRITELN('O MEGISTOS KOINOS DIAIRETHS EINAI ',MKD(AR1,AR2));
WRITELN('TO ELAXISTO KOINO POLLAPLASIO EINAI ',EKP(AR1,AR2));
END.{MAIN PROGRAM}

M Md d0 0q q d d1 1i ik kc c o ou uv vd dp p1 1q qo oc ci i i i A Ai io o0 0q qk kq q 1 1q q P PA AS SC CA AL L
O npoypdd1io1q cyci o1q id0coq 1ou kdnoic d0qd1ikc ouvdp1qoci iAio0qkq, nou
nopci vd ypqoionoiqoci yid 1qv dvdn1uq 1ov npoypdd1ov 1ou o1q yAoood Pascal. Oi
doikc d0qd1ikc ouvdp1qoci nou nopoc vd ypqoionoiqoouc o1qv Pascal civdi oi
dkAou0c:
exp(x) : ck0c1ik 1ou x (ex) ln(x) : vcncpcio Aoydpi0o 1ou x (lnx)
sqr(x) : 1c1pdyovo 1ou x (x2) sin(x) : qi1ovo 1ou x (qx)
sqrt(x) : 1c1pdyovikq pi(d 1ou x ( ) cos(x) : ouvqi1ovo 1ou x (ouvx)
abs(x) : dnAu1q 1iq 1ou x (|x|) arctan(x) : 1o cqdn1ocvq x (1ocqx)
pi : O dpi0 n (3.14). H ouvdp1qoq du1q cv cyci ndpdc1pou.
To x civdi q 1unikq ndpdc1po 1ov ouvdp1qocov. O1dv kdAoc 1q ouvdp1qoq nopoc vd
cyouc o1q 0coq 1ou x onoidqno1c c1dAq1q q ckqpdoq, dpkci vd qv ndpdid(ov1di doikoi
kdvvc (yid ndpdciyd, oi sqrt kdi ln cv cyov1di dpvq1ikc ndpdc1pou).

PROGRAM PARADEIGMA_13;
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 26
-
CONST
SENTINEL =0.0;
VAR
X:REAL;
BEGIN
WRITELN('AFTER EACH LINE ENTER A REAL NUMBER OR 0.0 TO STOP');
WRITELN;
WRITELN('X', 'ABS(X)' :10, 'SQR(X)' :10, 'SQRT(ABS(X))' :15);
READLN (X);
WHILE (X <> SENTINEL) DO
BEGIN
WRITELN (ABS(X) :10:2, SQR(X) :10:2, SQRT(ABS(X)) :10:2);
READLN(X);
END
END.

O O o oi i 1 1q q1 1c c - - A Ai id dq qo op pc c A Ai id d i ik kd do oi i v v k kd di i Z Zu uv vd dp p1 1q qo oc c v v. .
[1] Kdi oi o civdi unonpoypdd1d, du1voc ovdc npoypdd1o nou kdvouv id
ouykckpicvq cpydoid.
[2] AqAovov1di c1d 1qv ncpioyq 1ou VAR kdi npiv dn 1o BEGIN 1ou kupio npoypdd1o.
[3] H qAooq 1q idikdoid ckivdci c 1q Acq PROCEDURE cvo 1q ouvdp1qoq c 1q
Acq FUNCTION.
[4] H idikdoid no kdi q ouvdp1qoq cyci cvd vod.
[5] H ouvdp1qoq cyci o1yo vd unoAoyioci id 1iq, cvo o o1yo 1q idikdoid civdi
ycvik1cpo.
[6] Z1q qAooq 1q ouvdp1qoq ncpiAddvc1di kdi o 1no 1q 1iq nou unoAoyi(ci, cvo
o1q idikdoid kd1i 1c1oio cv cyci vqd.
[7] H idikdoid kdAci1di c 1o vd ypdqouc 1o vod 1q odv cv1oAq cod o1o npypdd
cvo q dvdqopd o1q ouvdp1qoq yivc1di cod oc id ndpdo1doq.
[8] Kd1d 1qv kAqoq id idikdoid 1q ivouc nAqpoqopic c ndpdc1pou 1iq,
ndpdc1pou c1dAq1c kdi kd0oAikc c1dAq1c. Hdipvouc nAqpoqopic dn 1q
idikdoid c ndpdc1pou c1dAq1c kdi kd0oAikc c1dAq1c. Evo dn 1i
ouvdp1qoci ndipvouc nAqpoqopid dn 1qv iid 1qv dvdqopd o1q ouvdp1qoq.

!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 27
-









*+,?&+@/;A) B;/)0) (0@A 456758

9;+,= C'

@"B!C&



!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 28
-
A Ap p c c d d
To dpycio civdi cvd ov0c1o 1no cocvov c qoq. Zyqd1i(c1di dn id opydvocvq
ouAAoyq dn ouvio1ooc kdnoiou dAAou 1nou. Ono o1d ovoAd kdi o1i cyypdqc c1oi kdi
o1o dpycio ivc1di cvd vod, q npooncAdoq o oc kd0c ouvio1ood yivc1di cyopio1d. Zc
1nou yopi qoq q npooncAdoq oc id ouvio1ood yivc1di c 1o vod 1q dvcdp1q1d dn
1q 0coq 1q, cvo oc 1nou c qoq q npooncAdoq yivc1di oqovd c 1q 0coq 1q o1q
ouAAoyq kdi yi c 1o vod 1q. Eni1pcn1c npdci civdi q ckyopqoq 1iov, q dno0qkcuoq
kdi q dvdk1qoq covocvov ouvio1ooov.
A Ap p c c d d K Kc ci i c cv vo ou u
Td dpcd kcicvou (text files) dno1cAov1di dn ydpdk1qpc kdi yopi(ov1di oc ypdc oi
onoic 1cAciovouv c 1o ydpdk1qpd c1dqopd o1qv cncvq ypdq (CR/LF). Oi ydpdk1qpc
1ov ypdov nopci vd oyqd1i(ouv Acci q npo1doci, vd civdi ciikoi ydpdk1qpc,
ck1unooioi q yi, q dpi0q1ikoi ydpdk1qpc nou dv1io1oiyov o1d qqqid dpi0q1ikov
cocvov. Iid vd ypqoionoiqoouc cvd dpycio kcicvou, npcnci no kdvouc kdi yid kd0c
dAAq c1dAq1q, vd 1ou ooouc cvd vod kdi vd qAooouc 1ov 1no 1ou c 1q Acq Text.
EninAcov, yid vd ypqoionoiqoouc cvd dpycio yid ciooo q coo npcnci vd ooouc kdi 1o
npdyd1ik vod 1ou dpyciou 1ou iokou o1o onoio dvdqcpc1di. Au1 cni1uyydvc1di c 1q
idikdoid assign.
Hdpdciyd
VAR MATHITES: TEXT;
.
BEGIN
.
ASSIGN (MATHITES,C:STUDENTS.DAT);
To vod 1ou dpyciou o1o ioko (c:students.dat), o1o onoio dvdqcpc1di 1o dpycio c 1q
ypqoq 1q idikdoid assign, ypqoionoici1di vo id qopd. OAc oi dAAc dvdqopc 1ou
dpyciou o1o npypdd yivov1di c 1o vod 1ou, no du1 qAo0qkc o1qv ncpioyq qAooq
1ov c1dAq1ov (mathites).
Oi cv1oAc nou ypqoionoioc o1qv Turbo Pascal yid dpycid kcicvou cunqpc1ov 1ou
ndpdkd1o okono:

Avoiyd q kAcoio dpcv
reset (F1)
Onou F1 civdi c1dAq1q 1nou dpyciou, no cyci kd0opio1ci dn 1qv cv1oAq assign.
Evcpycid: H cv1oAq du1q dvoiyci cvd dpycio nou undpyci, c uvd11q1d dvdyvooq q
cyypdqq oc du1. Av 1o dpycio civdi 1nou text, 11c 1o dpycio nopci vd ypqoionoiq0ci
vo yid dvdyvooq.
Hdpdciyd: ASSIGN(ARXEIO_SP,FOITITES.DAT);
RESET(ARXEIO_SP);
rewrite (F1)
Onou F1 civdi c1dAq1q 1nou dpyciou, no cyci kd0opio1ci dn 1qv cv1oAq assign.
Evcpycid: H cv1oAq du1q qioupyci cvd dpycio yid cyypdqq. Av 1o dpycio du1 11c 1d
cocvd nou civdi dno0qkcucvd o1o dpycio kd1do1pcqov1di.
Hdpdciyd: ASSIGN(ARXEIO_FOIT,FOITITES.DAT);
RESET(ARXEIO_FOIT);
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 29
-
close (F1)
Onou F1 civdi c1dAq1q 1nou dpyciou, no cyci kd0opio1ci dn 1qv cv1oAq assign.
Evcpycid: H cv1oAq du1q kAcivci 1o dpycio F1 kdi cvqcpovci 1ov kd1dAoyo (directory). Mc1d 1q
ypqoq 1ou dpyciou kdi npiv 1cAciooci 1o npypdd, ypqoionoici1di q cv1oAq close yid 1o
kAcioio 1ou dpyciou. Edv c ypqoionoiq0ci kdi cyouc dvoici dpycio yid cyypdqq, 11c civdi
ni0dv vd ydoouc opiocvd dn 1d 1cAcu1did cocvd nou ypdq1qkdv.
Hdpdciyd: CLOSE(PELATES);
append (F1)
Onou F1 civdi c1dAq1q 1nou dpyciou, no cyci kd0opio1ci dn 1qv cv1oAq assign.
Evcpycid: Avoiyci cvd dpycio 1nou kcicvou yid cyypdqq kdi ouykckpicvd yid npo0coq vcov
cocvov o1o 1cAo 1ou dpyciou kdi 1d vcd cocvd c oqvouv 1d ndAid.
Hdpdciyd: APPEND(SXOLEIO);

Enccpydod dpcv
read/ readln (F1, M1, M2, , Mn)
Onou F1 civdi c1dAq1q 1nou dpyciou, no cyci kd0opio1ci dn 1qv cv1oAq assign kdi M1,
M2,,Mn civdi 1d ovd1d 1ov c1dAq1ov.
Evcpycid: H cv1oAq read idd(ci cocvd dn 1o dpycio F1 kdi 1d dno0qkcci o1i c1dAq1c
M1, M2,,Mn. H cv1oAq readln, q onoid ypqoinoici1di vo oc dpycid kcicvou, idd(ci
cocvd c 1ov iio 1pno dAAd c1d 1qv ck1cAcoq 1q o cik1q 1ou dpyciou c1dkivci1di
npo 1qv cncvq ypdq 1ou kcicvou 1ou dpyciou.
Hdpdciyd: VAR
KOD: INTEGER;
EPONYMIA: STRING[30];
LOIPA_STOIXEIA: STRING;
ARXEIO_PELATWN: TEXT;
BEGIN

READLN(ARXEIO_PELATWN,KOD, EPONYMIA,LOIPA_STOIXEIA);
write/writeln (F1, M1, M2, , Mn)
Onou F1 civdi c1dAq1q 1nou dpyciou, no cyci kd0opio1ci dn 1qv cv1oAq assign kdi M1,
M2,,Mn civdi 1d ovd1d 1ov c1dAq1ov.
Evcpycid: H cv1oAq write ypdqci o1o dpycio F1 1d cocvd nou civdi dno0qkcudvd o1i
c1dAq1c M1, M2,,Mn. H cv1oAq writeln, q onoid ypqoinoici1di vo oc dpycid kcicvou,
ypdqci cocvd c 1ov iio 1pno dAAd c1d 1qv ck1cAcoq 1q o cik1q 1ou dpyciou
c1dkivci1di npo 1qv cncvq ypdq 1ou kcicvou 1ou dpyciou.
Hdpdciyd: VAR
KOD: INTEGER;
EPONYMIA: STRING[30];
LOIPA_STOIXEIA: STRING;
PELATES: TEXT;
BEGIN

WRITELN(PELATES,KOD, EPONYMIA,LOIPA_STOIXEIA);
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 30
-
eof (F1)
Onou F1 civdi c1dAq1q 1nou dpyciou, no cyci kd0opio1ci dn 1qv cv1oAq assign.
Evcpycid: H ouvdp1qoq civdi boolean kdi cnio1pcqci 1qv 1iq true, dv pc0ci q cvciq 1cAou
1ou dpyciou (1cAo cocvov), dAAio, cnio1pcqci 1qv 1iq false. Av ndpdAqq0ci q c1dAq1q
F1, 11c o dpycio Addvc1di q 1unonoiqcvq ovdd cioou (standard input) nou civdi 1o
nAqk1poAyio.
Hdpdciyd: IF EOF(ARXEIO_MATH)
THEN WRITELN(TELOS ARXEIOU!!);
seekeof (F1)
Onou F1 civdi c1dAq1q 1nou dpyciou, no cyci kd0opio1ci dn 1qv cv1oAq assign.
Evcpycid: H ouvdp1qoq civdi boolean kdi cnio1pcqci 1qv 1iq true, dv pc0ci q cvciq 1cAou
1ou dpyciou (1cAo cocvov), dAAio, cnio1pcqci 1qv 1iq false. Eivdi dv1io1oiyq 1q
ouvdp1qoq eof c 1q idqopd 1i ndpdAcinci Ad 1d kcvd kdi 1ou ydpdk1qpc 1cAou
ypdq.
eoln (F1)
Onou F1 civdi c1dAq1q 1nou dpyciou, no cyci kd0opio1ci dn 1qv cv1oAq assign.
Evcpycid: H ouvdp1qoq qAovci dv undpyouv dkq ydpdk1qpc o1qv 1pcyouod ypdq. H
ouvdp1qoq cnio1pcqci 1qv 1iq true, dv idd(ov1d pci 1o 1cAo 1q ypdq q 1o 1cAo 1ou
dpyciou, dAAio cnio1pcqci 1qv 1iq false.
Hdpdciyd: IF EOLN(ARXEIO_MATH)
THEN WRITELN(TELOS GRAMMIS!!);
IOresult
Evcpycid: H ouvdp1qoq cnio1pcqci id dkcpdid 1iq nou ciyvci 1qv kd1do1doq 1q 1cAcu1did
cv1oAq cioou/ cou/ H ouvdp1qoq civdi yopi ndpdc1po. Av q 1cAcu1did Aci1oupyid
cioou/ cou 1cAciooci cni1uyo, 11c q ouvdp1qoq cnio1pcqci 1qv 1iq 0 (qcv). Iid vd
Aci1oupyqoci q ouvdp1qoq npcnci vd cyci qAo0ci npo 1ov compiler 1q Pascal q qAooq
{$I-} nou ivci o1o ypqo1q 1q uvd11q1d cAcyyou 1ov Ad0ov nou cyouv oycoq c ciooo kdi
coo. Av cv cyci yivci du1q q qAooq kdi undpyci Ad0o oc Aci1oupyid cioou/ cou, 11c
o1dd1dci q ck1cAcoq nou npoypdd1o c dv1io1oiyo qvud.
Hdpdciyd: READLN (ARXEIO_PELATWN,KOD, EPONYMIA,LOIPA_STOIXEIA);
IF IORESULT <> 0 THEN REWRITE(MATHITES);

Xcipio dpcv
assign (F1, F2)
Onou F1 civdi c1dAq1q 1nou dpyciou, kdi F2 1o vod 1ou dpyciou o1o Aci1oupyik
Zo1qd.
Evcpycid: H cv1oAq du1q dv1io1oiyi(ci o1q c1dAq1q F1 1o vod 1ou dpyciou F2, c1oi no
cyci opio1ci o1o Aci1oupyik Zo1qd.
Hdpdciyd: ASSIGN(ARX_PELATES,C:PELATES.DAT);
erase (F1)
Onou F1 civdi c1dAq1q 1nou dpyciou, no cyci kd0opio1ci dn 1qv cv1oAq assign.
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 31
-
Evcpycid: H cv1oAq idypdqci dn 1o ioko 1o dpycio nou dv1io1oiyci o1qv c1dAq1q F1.
Hdpdciyd: ERASE(ARX_PELATES);
rename (F1, F2)
Onou F1 civdi c1dAq1q 1nou dpyciou, no cyci kd0opio1ci dn 1qv cv1oAq assign, kdi F2
c1dAq1q 1nou string.
Evcpycid: AAAd(ci 1o vod 1ou dpyciou F1 c 1o vod nou dv1io1oiyci o1o string F2.
Hdpdciyd: RENAME(ARXEIO_SP,FOITITES.DAT);

Xpqoq 1ou ck1un1q
H ypqoq 1ou ck1uno1q dn 1qv Pascal yivc1di cod dn cv1oAc idycipioq 1ov dpyciov. O
ck1uno1q nopci vd 0copq0ci 1i civdi cvd dpycio kcicvou o1o onoio nopoc vo vd
ypdqouc. Hdpdkd1o ivc1di cvd ndpdciyd ypqoq 1ou ck1uno1q.
PROGRAM EKTYPOSI;
USES WINCRT;
{5nX.on .c bnon s.:oX. s.o5ou/ s_5ou os Turbo Pascal .c Windows}
VAR
EKTYP: TEXT;
{5nX.on :n s:cXn:n ektyp . cbsou :nou text}
BEGIN
ASSIGN(EKTYP,LPT1);
{c.:.o:onon :n 0bc LPT1 :ou unoXo.o:n o:n s:cXn:n ektyp}
REWRITE(EKTYP); {.o.c sn.ko....c s :o. sk:un.:n}
WRITELN(EKTYP,THIS IS A TEST);
CLOSE(EKTYP); {KXso.o sn.ko....c s :o. sk:un.:n}
END.

Hdpdcyd1d
[1] Eyypdqq oc dpycio kcicvou
PROGRAM PARADEIGMA_14;
VAR FNAME, TXT : STRING;
USERFILE : TEXT;
BEGIN
WRITE('DOSE ONOMA ARXEIOU (PX.C:\TEST.TXT) :');
READLN(FNAME);
ASSIGN(USERFILE, FNAME);
REWRITE(USERFILE);
WRITELN('GRAPSE TO KIMENO : ');
READLN(TXT);
WRITELN(USERFILE,TXT);
CLOSE(USERFILE);
END.
Encqyqoq Hpoypdd1o
UserFile : Text AqAovouc 1i 1o dpycio 0d ncpicyci kcicvo(text).
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 32
-
Assign(UserFile, FName); Av1io1oiyqoq 1ou dpyciou. Hcpvov 1d opiod1d 1no dpyciou kdi
vod dpyciou(nAqpq idpoq). AqAdq 1o dpycio FName 0d civdi 1nou UserFile qAdq
kcicvo.
Avoiyd 1ou dpyciou FName yid cyypdqq (dv cyci qq kcicvo 1o dpycio oqvc1c kdi ypdqci 1o
vco).
Kdvov1d ypqoq 1ou Append(UserFile); npoo0c1ouc 1o kcicvo o1o 1cAo 1ou dpyciou (cqoov
undpyci 1o dpycio !!!) kpd1ov1d 1o npoqyocvo kcicvo.
Writeln(UserFile,Txt); Eyypdqq kcicvou o1o dpycio (yi o1qv o0vq).
Close(UserFile); KAcioio 1ou dpyciou FName (dndi1ci1c).

[2] Avdyvooq dn dpycio kcicvou
PROGRAM PARADEIGMA_15;
VAR USERFILE : TEXT;
FILENAME, TFILE : STRING;
BEGIN
WRITE('DOSE ONOMA ARXEIOU (PX.C:\TEST.TXT) :');
READLN(FILENAME);
ASSIGN(USERFILE, FILENAME);
RESET(USERFILE);
REPEAT
READLN(USERFILE,TFILE);
WRITELN(TFILE);
UNTIL EOF(USERFILE);
CLOSE(USERFILE);
READLN;
END.
Encqyqoq Hpoypdd1o
Reset(UserFile);
Avoiyd 1ou dpyciou FileName yid dvdyvooq.

Repeat
Readln(UserFile,TFile);
Writeln(TFile);
Until Eof(UserFile);

Aidd(c dn 1o dpycio Readln(UserFile,TFile); Kdi vd ndpouoid(ci o1qv o0vq
Writeln(TFile); cypi vd q1doci o1o 1cAo 1ou dpyciou Until Eof(UserFile);.
(Eof End of file)
Close(UserFile); KAcioio 1ou dpyciou FileName (dndi1ci1c).
Hdpd1qpqoci: H dvdyvooq 1ou dpyciou yivc1c ypdq - ypdq cypi 1o 1cAo 1ou EOF.

[3] Aidypdqq Apyciou ( Hpoooyq Kivuvo !!! )
PROGRAM PARADEIGMA_16;
VAR UFILE : TEXT;
FILENAME : STRING;
BEGIN
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 33
-
WRITE('DOSE ONOMA ARXEIOU (PX.C:\TEST.TXT) :');
READLN(FILENAME);
ASSIGN(UFILE,FILENAME);
ERASE(UFILE);
END.
Encqyqoq Hpoypdd1o
Erase(UFile); Avoiyd 1ou dpyciou FileName yid idypdqq.

[4] Nd ypdqc1c id idikdoid (procedure) o1qv Pascal nou 0d (q1d 1i nAqpoqopic: vod,
cni0c1o, email, 1qAcqovo kdi vd 1i dno0qkcci oc dpycio kcicvou(Append). Z1q ouvcycid 0d
yivc1di cpo1qoq dv 0cAouc vd ouvcyioouc vd npoo0c1ouc cocvd o1o dpycio. Av q
dndv1qoq civdi 0c1ikq 0d dvdkdAci1di q idikdoid, cvo dv civdi dpvq1ikq 0d 1cpd1i(c1di 1o
npypdd.
Td cocvd vd dno0qkcov1di o1o dpycio o1qv cq opqq:
PROGRAM PARADEIGMA_17;

PROCEDURE INSERT();
VAR
USERFILE : TEXT;
NAME, SURNAME, MAIL, PHONE : STRING;
YN : CHAR;
BEGIN
ASSIGN(USERFILE, 'C:\PHONEBOOK.TXT');
{TO ARXEIO C:\PHONEBOOK.TXT PREPEI NA YPARXEI GIA NA MPORESEI NA GINEI
APPEND !!!}
APPEND(USERFILE);
WRITE('ONOMA: ');
READLN(NAME);
WRITE('EPITHETO: ');
READLN(SURNAME);
WRITE('EMAIL:');
READLN(MAIL);
WRITE('TILEFONO: ');
READLN(PHONE);
WRITELN(USERFILE, 'ONOMA: ' + NAME);
WRITELN(USERFILE, 'EPITHETO: ' + SURNAME);
WRITELN(USERFILE, 'EMAIL:' + MAIL);
WRITELN(USERFILE, 'TILEFONO: ' + PHONE);
WRITELN(USERFILE, '');
CLOSE(USERFILE);
WRITE('THELETE NA SINEXISETE (Y/N) :');
READLN(YN);
IF(YN='Y') THEN
BEGIN
CLRSCR; {KATHARISMOS TIS OTHONIS}
INSERT();
END
ELSE
BEGIN
WRITE('BYE BYE ...');
EXIT; {EXODOS APO TO PROGRAMMA}
Onoma : Toto
Epitheto : Blabla
email: mymail@teiep.com
Tilefono : 2109999999

!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 34
-
END;
END;

BEGIN
INSERT();
READLN;
END.

A Ap p c c d d M Mc c T T n no o
Td dpcd c 1no (typed files) civdi dpycid, nou oi dpi0q1ikc 1ic dncikovi(ov1di oc
dpi0q1ikq opqq kdi yi oc opqq ydpdk1qpov, no o1d dpycid kcicvou. Oi ouvio1ooc 1ou
dpyciou nopci vd civdi kd0c 1nou, dnAo, ov0c1ou, c qoq k1A. c cdipcoq 1ov 1no
dpyciou. Td dpycid dno1cAov1di dn cyypdqc cv ouykckpicvou 1nou ny dkcpdiou,
npdyd1iko k1A. H qoq 1ov dpyciov opiocvou 1nou npooiopi(c1di dn 1ov 1no 1ov
cocvov 1d onoid 0d dno0qkcu1ov oc du1d.
Iid vd ypqoionoiqoouc cvd dpycio, npcnci vd 1ou ooouc cvd vod kdi vd qAooouc 1i
civdi dpco (file), kdi vd qAooouc 1ov 1no 1ov cocvov nou dno0qkcov1di oc du1.
Hdpdcyd1d
VAR
ETH: FILE OF INTEGER;
TEMP: FILE OF REAL;
SURNAMES: FILE OF STRINGS[20];
Td cocvd civdi opydvocvd oc cyypdqc (records) kdi kd0c cocvo dno1cAci id
cyypdqq. To qko id cyypdqq civdi o dpi0 1ov bytes 1d onoid dndi1ov1di yid 1qv
dno0qkcuoq 1ou ouykckpicvou 1nou.
Oi cv1oAc reset, rewrite, read, write, append, assign, close, erase, rename kdi eof nou
civdi id0coic dn 1q yAoood Pascal yid 1d dpycid kcicvou ioyouv c 1qv iid oqdoid kdi
yid 1d dpycid c 1no. Oi cv1oAc read kdi write civdi dnAonoiqcvc, dqo id vo
ouvio1ood idd(c1di q ypdqc1di o1o dpycio kd0c qopd nou ck1cAov1di. Akq, cnciq cv
civdi dpycid kcicvou, c yivc1di c1dqpdoq dn 1o dpycio o1q vqq kdi dn 1q vqq o1o
dpycio.
Td dpycid c 1no ovod(ov1di kdi udik (binary) yid1i q coo1cpikq dncikvioq 1ov
cocvov o1q vqq civdi iid c 1qv co1cpikq dncikvioq 1ov cocvov o1o dpycio. Td
udikd dpycid id0c1ouv cvdv dpi0 ocipd yid kd0c ouvio1ood (cyypdqq) dpyi(ov1d dn 1o
qcv. Ek1 dn 1q ocipidkq npooncAdoq nou nopci vd yivci c 1qv cv1oAq read, q onoid
kd0c qopd idd(ci 1qv cncvq cyypdqq, id 1uydid cyypdqq nopci vd pc0ci dv o0ci o
dpi0 1q ocipd 1q. H dcoq q 1uydid npooncAdoq cni1uyydvc1di c cvdv ciik cik1q, 1o
ck1q cyypdqq dpcou (file pointer). Oi cvcpycic civdi:
1. Evqcpovc1di o cik1q dpyciou c 1ov dpi0 1q cyypdqq 1ou dpyciou nou 0cAouc
vd iddoouc q vd ypdqouc.
2. Xpqoionoici1di q dv1io1oiyq cv1oAq dvdyvooq q cyypdqq, q onoid ck1cAci1di ndvo
o1qv 1pcyouod cyypdqq.

seek (F1, R)
Onou F1 civdi c1dAq1q 1nou dpyciou, no cyci kd0opio1ci dn 1qv cv1oAq assign, kdi R q
0coq 1q npo dvd(q1qoq cyypdqq o1o dpycio.
Evcpycid: H cv1oAq, q onoid civdi idikdoid, 1ono0c1ci 1o cik1q dvdyvooq/cyypdqq o1o
record c dpi0 Ryid cAAov1ik read q write. H cv1oAq c Aci1oupyci oc dpycid 1nou TEXT.
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 35
-
H npo1q cyypdqq 1ou dpyciou cyci dpi0 qcv (0).
Hdpdciyd: SEEK (PELATES, AR);
READ (PELATES, STOIXEIA_PELATH);
{TOHOOETHZE TO AEIKTH APXEIOY (FILE POINTER) ZTHN ELLPAIH ME APIOMO AR
TOY APXEIOY PELATES, AIABAZE AHO TO APXEIO PELATES THN ELLPAIH HOY
AEIXNEI O AEIKTHZ TOY APXEIOY KAI TOHOOETHZE TA AEAOMENA ZTH METABAHTH
STOIXEIA_PELATH }
filepos (F1)
Onou F1 civdi c1dAq1q 1nou dpyciou, no cyci kd0opio1ci dn 1qv cv1oAq assign.
Evcpycid: H ouvdp1qoq cnio1pcqci 1q 0coq 1ou dpyciou nou 0d iddo1ci q 0d ypdqci q
cncvq cyypdqq. Z1qv dpyq 1ou dpyciou q ouvdp1qoq cnio1pcqci 1qv 1iq qcv (0), o1o
1cAo 1ou dpyciou cnio1pcqci 1qv iid 1iq c 1q filesize.
Hdpdciyd: WRITELN(THESI TOU RECORD:,FILEPOS(MATHITES));
filesize (F1)
Onou F1 civdi c1dAq1q 1nou dpyciou, no cyci kd0opio1ci dn 1qv cv1oAq assign.
Evcpycid: H ouvdp1qoq cnio1pcqci 1o cyc0o 1ou dpyciou oc nAq0o record. H ouvdp1qoq c
nopci vd ypqoionoiq0ci oc dpycid 1nou TEXT.
Hdpdciyd: WRITELN(MAGETHOS ARXEIOU:,FILESIZE(MATHITES));

Hdpdciyd
PROGRAM PARADEIGMA_18;
VAR A,I:INTEGER;
VAR FP1: FILE OF INTEGER;

BEGIN
ASSIGN(FP1,'TEMPO.DAT');
REWRITE(FP1);
FOR I:=1 TO 5 DO
BEGIN
WRITE('DOSE ENAN AKERAIO: ');
READLN(A);
WRITE(FP1,A);
END;
CLOSE(FP1);
RESET(FP1);
WRITELN('TA DEDOMENA TOU ARXEIOU EINAI:');
WHILE NOT EOF(FP1) DO
BEGIN
READ(FP1,A);
WRITELN(A);
END;
WRITELN;
CLOSE(FP1);
END.
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 36
-








*+,?&+@/;A) B;/)0) (0@A 456758

9;+,= #'

C+&5!7,
8--"&<67



!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 37
-
H H v vd dk kc c
Xpqoionoioc nvdkc, 1dv 0cAouc vd cnccpydo1oc cvd nAq0o oociov o1oiyciov. Td
o1oiycid cv nivdkd civdi ndv1d 1ou iiou 1nou, n.y. dkcpdioi dpi0oi, npdyd1ikoi dpi0oi,
ouoAoocipc kAn., kdi dvdqcpov1di c koiv vod (1o vod 1ou nivdkd) kdi 1q 0coq 1ou
o1o nivdkd. Oi ido1doci 1ou nivdkd o1qv Pascal npcnci vd civdi yvoo1c ck 1ov npo1cpov (vd
qAovov1di qAdq o1o 1qd qAoocov 1ou npoypdd1o). Td o1oiycid 1ou nivdkd
dno0qkcov1di oc ouvcycvc 0coci o1q vqq.
Mid c1dAq1q nivdkd qAovc1di o cq:
VAR <.oc n.ckc>:ARRAY[<5.co:os.>] OF <:no o:o.s..>;
Zuykckpicvd yid 1o ovoido1d1o nivdkd A c 10 o1oiycid:
VAR A:ARRAY[1..10] OF INTEGER;
To vod 1ou nivdkd civdi A (cniAcyc1di dn 1ov npoypdd1io1q), 1d o1oiycid 1ou nivdkd civdi
dkcpdioi dpi0oi kdi kd0cvd dn du1d dvdqcpc1di o A[1], A[2], A[3], ..., A[10]
Iid nivdkd o ido1docov A c 3 ypdc kdi 4 o1qAc:
VAR A:ARRAY[1..3,1..4] OF REAL;
To vod 1ou nivdkd civdi A (cniAcyc1di dn 1ov npoypdd1io1q), 1d o1oiycid 1ou nivdkd civdi
npdyd1ikoi dpi0oi kdi kd0cvd dn du1d dvdqcpc1di o A[I,J], nou 1o I cyci 1ic 1, 2, q 3
kdi 1o J cyci 1ic 1, 2, 3 q 4.
A[1,1] A[1,2] A[1,3] A[1,4]
A[2,1] A[2,2] A[2,3] A[2,4]
A[3,1] A[3,2] A[3,3] A[3,4]

Bdoikc Aci1oupyic nou nopci vd yivouv o1d o1oiycid cv nivdkd civdi:
Avdyvooq 1ov o1oiyciov 1ou nivdkd dn 1o nAqk1poAyio q dnooq 1iq o1d o1oiycid
c kdnoio 1no.
Ek1nooq 1ov o1oiyciov 1ou nivdkd q cqdvioq 1ou o1qv o0vq.
Aidncpdoq 1ou nivdkd yid dvd(q1qoq 1ov o1oiyciov nou ikdvonoiov kdnoid ouv0qkq.
Enccpydoid 1ov o1oiyciov 1ou nivdkd (yid cpcoq d0poiod1o, coou pou, cyio1ou
kdi cAdyio1ou o1oiyciou, kAn.).
Tdivqoq 1ov o1oiyciov 1ou nivdkd, c o1yo 1qv cukoA1cpq kdi 1dy1cpq
dvd(q1qoq.
Enciq oi Aci1oupyic du1c ck1cAov1di oc Ad 1d o1oiycid 1ou nivdkd kdi cocvou 1i oi
ido1doci 1ou nivdkd civdi yvoo1c (dpd kdi o dpi0 1ov o1oiyciov) yid 1qv cnccpydoid 1ou
nivdkd cvcikvu1di q ypqoq 1q cv1oAq FOR.
H.y. yid vd iddoouc 1o ovoido1d1o nivdkd A c 10 o1oiycid nou opiodc nio ndvo
ypqoionoioc:
FOR I:=1 TO 10 DO
READLN(A[I]);
Av 0cAouc vd civdi nio oAokAqpocvo kdi vd cpouc nio o1oiycio 1ou nivdkd idd(ouc kd0c
qopd ypqoionoioc:
FOR I:=1 TO 10 DO
BEGIN
WRITE('DOSE STOIXEIO A[ ',I,' ]');
READLN(A[I]);
END;
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 38
-
Iid vd iddoouc 1o nivdkd nivdkd o ido1docov A c 3 ypdc kdi 4 o1qAc nou opiodc
nio ndvo ypqoionoioc:
FOR I:=1 TO 3 DO
FOR J:=1 TO 4 DO
READLN(A[I,J]);
Av 0cAouc vd civdi nio oAokAqpocvo kdi vd cpouc nio o1oiycio 1ou nivdkd idd(ouc kd0c
qopd ypqoionoioc:
FOR I:=1 TO 3 DO
FOR J:=1 TO 4 DO
BEGIN
WRITE('DOSE STOIXEIO A[ ',I,',',J,' ]');
READLN(A[I,J]);
END;

A Av vd d q q1 1q qo oq q Z Z1 1o oi i c c v v Z Zc c H H v vd dk kd d: : Z Zc ci ip pi id dk kq q A Av vd d q q1 1q qo oq q ( (S Se er ri ia al l S Se ea ar rc ch h) )
Od 0copqoouc nivdkd A c o1oiycid dkcpdiou dpi0o kdi 0d cAcyouc dv undpyci o1o
nivdkd du1 o1oiycio 1ou onoiou q 1iq vd civdi ioq c cvd ouykckpicvo dpi0 N. Av 1c1oio
o1oiycio undpyci, q (q1ocvq dndv1qoq civdi q 0coq 1ou o1o nivdkd. Av yi, 0d ndpouc odv
dndv1qoq 1ov dpi0 0. Od cc1doouc Ad 1d o1oiycid 1ou nivdkd ckivov1d dn 1o npo1o
o1oiycio 1ou ouykpivov1d 1o c 1o dpi0 N. O dAypi0o oc yAoood Pascal nou Avci 1o
ndpdndvo npAqd civdi o dkAou0o:
PROGRAM SERIAL_SEARCH_A;
VAR A:ARRAY[1..10] OF INTEGER;
I,N,M:INTEGER;F:BOOLEAN;
BEGIN
FOR I:=1 TO 10 DO
BEGIN
WRITE('DOSE STOIXEIO PINAKA A[',I,']= ');
READLN(A[I]);
END;
WRITELN;
WRITE('DOSE ARITHMO TON OPOIO ANAZHTAS ');
READLN(N);
M:=0;
F:=FALSE;
FOR I:=1 TO 10 DO
IF A[I]=N THEN
BEGIN
M:=I;
F:=TRUE;
END;
WRITELN('O ARITHMOS ',N,' BRETHIKE STH THESI ',M);
END.
H c1dAq1q I ciyvci 1o nAq0o 1ov o1oiyciov nou cyouv cc1do1ci. H 1iq 1q dudvci kd1d 1
oc kd0c ck1cAcoq 1q cv1oAq FOR, yid vd cc1do1ci 1o cncvo o1oiycio 1ou nivdkd. H
c1dAq1q M cyci dpyikq 1iq 0. H 1iq du1q cv dAAd(ci ndpd vo 1dv pc0ci o1oiycio c
1iq N. Av du1 civdi 1o I-oo1 o1oiycio 1ou nivdkd, 11c o1o M ckyopci1di q 1iq I.
Z1o ndpdndvo npypdd ocipidkq dvd(q1qoq q cndvdAqn1ikq oq FOR ouvcyi(ci 1ov
cAcyyo, dkq kdi dv 1o o1oiycio 1ou nivdkd pc0ci, oonou vd q1doci kdi o1o 1cAcu1dio
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 39
-
o1oiycio 1ou nivdkd. Av o1ov nivdkd undpyouv ncpioo1cpd dn cvd o1oiycid c 1qv 1iq N, o
dno1cAcod 0d cyouc 1qv 1cAcu1did dn 1i 0coci o1qv onoid undpyci 1o o1oiycio N.
Mid nio cA1iocvq ckooq 1ou dAypi0ou 0d q1dv vd o1dd1qoci q cndvdAqn1ikq oq, Ai
pc0ci 1o npo1o o1oiycio c 1iq N. O dAypi0o oc yAoood Pascal nou Avci 1o ndpdndvo
npAqd civdi o dkAou0o:
PROGRAM SERIAL_SEARCH_B;
VAR A:ARRAY[1..10] OF INTEGER;
I,N,M:INTEGER;F:BOOLEAN;
BEGIN
FOR I:=1 TO 10 DO
BEGIN
WRITE('DOSE STOIXEIO PINAKA A[',I,']= ');
READLN(A[I]);
END;
WRITELN;
WRITE('DOSE ARITHMO TON OPOIO ANAZHTAS ');
READLN(N);
M:=0;
F:=FALSE;
I:=0;
WHILE (I<>10) AND (F=FALSE) DO
BEGIN
I:=I+1;
IF A[I]=N THEN
BEGIN
M:=I;
F:=TRUE;
END;
END;
WRITELN('O ARITHMOS ',N,' BRETHIKE STH THESI ',M);
END.

T Td d i iv v q qo oq q Z Z1 1o oi i c c v v Z Zc c H H v vd dk kd d: : T Td d i iv v q qo oq q 4 4u uo od dA A d d ( (B Bu ub bb bl le e S So or rt t) )
Od 0copqoouc nivdkd A c o1oiycid 8 dkcpdiou dpi0o. Iid vd kd1dvoqoouc kdA1cpd 1q
Aci1oupyid 1ou dAypi0ou quodAid, d qdv1do1oc 1o nivdkd A kd1dkpuqo kdi 1ou
dpi0o odv quodAic. O dpi0 c 1q ikp1cpq 1iq civdi q nio cAdqpid quodAid, cvo o
dpi0 c 1q cydA1cpq 1iq q nio dpid quodAid.
Z1o npo1o ncpdod 1ou nivdkd ckivdc dn 1o kd1o cpo 1ou nivdkd kdi npdyd1onoioc
idoyikc dAAdyc yci1ovikov quodAiov. Zc kd0c (cuydpi quodAiov nou ouvdv1dc, dv q
nio kd1o quodAid civdi nio cAdqpid 11c nqydivci dn ndvo. O1dv oAokAqpo0ci 1o npo1o
ncpdod q nio cAdqpid quodAid piokc1di o1qv kopuqq.
Z1o c1cpo ncpdod 1ou nivdkd ckivdc kdi ndAi dn 1o kd1o cpo 1ou nivdkd kdi
npdyd1onoioc idoyikc dv1dAAdyc c1d yci1ovikov quodAiov. Zc kd0c (cuydpi
quodAiov nou ouvdv1dc, dv q nio kd1o quodAid civdi nio cAdqpid 11c nqydivci dn ndvo.
Ivopi(ouc 1i q ndvo-ndvo 0coq cyci kd1dAqq0ci dn 1q ikp1cpq quodAid o1o npo1o
ncpdod, on1c cv cyci cvvoid vd q1doouc o 1qv kopuqq 1ov quodAiov. O1dv
oAokAqpo0ci 1o c1cpo ncpdod, q c1cpq nio cAdqpid quodAid piokc1di o1q c1cpq
0coq 1ou nivdkd.
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 40
-
BAcnouc 1i dndi1ci1di cvd qd Aiy1cpo, cqoov q oykpioq 1ov o ndvo o1oiyciov cv
cyci cvvoid. Hdpoid civdi q idikdoid o1o 1pi1o, 1c1dp1o, ncn1o, ck1o kdi coo ncpdod
no qdivc1di kdi o1o dkAou0o oyqd.
1
o
ncpdod 2
o
ncpdod 3
o
ncpdod
3 3 3 3 3 3 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1
7 7 7 7 7 7 1 3 3 3 3 3 3 3 2 2 2 2 2 2 2
8 8 8 8 8 1 7 7 7 7 7 7 7 2 3 3 3 3 3 3 3
2 2 2 2 1 8 8 8 8 8 8 8 2 7 7 7 7 7 7 6 6
6 6 6 1 2 2 2 2 2 2 2 2 8 8 8 8 8 8 6 7 7
10 10 1 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 8 8 8
1 1 10 10 10 10 10 10 10 9 9 9 9 9 9 9 9 9 9 9 9
9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 10 10

4
o
ncpdod 5
o
ncpdod 6
o
ncpdod 7
o
ncpdod
1 1 1 1 1 1 1 1 1 1 1
2 2 2 2 2 2 2 2 2 2 2
3 3 3 3 3 3 3 3 3 3 3
6 6 6 6 6 6 6 6 6 6 6
7 7 7 7 7 7 7 7 7 7 7
8 8 8 8 8 8 8 8 8 8 8
9 9 9 9 9 9 9 9 9 9 9
10 10 10 10 10 10 10 10 10 10 10

O dAypi0o oc yAoood Pascal nou Avci 1o ndpdndvo npAqd civdi o dkAou0o:
PROGRAM BUBBLE_SORT;
VAR A:ARRAY[1..8] OF INTEGER;
I,J,TEMP:INTEGER;
BEGIN
FOR I:=1 TO 8 DO
BEGIN
WRITE('DOSE STOIXEIO PINAKA A[',I,']= ');
READLN(A[I]);
END;
WRITELN;
FOR I:=2 TO 8 DO
FOR J:=8 DOWNTO I DO
IF A[J-1]>A[J] THEN
BEGIN
TEMP:=A[J-1];
A[J-1]:=A[J];
A[J]:=TEMP;
END;
FOR I:=1 TO 8 DO
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 41
-

33 32 31
23 22 21
13 12 11
a a a
a a a
a a a
WRITELN('A[',I,']= ',A[I]);
END.
Hdpdcyd1d
[1] (Hdpdciyd oc ovoido1d1o nvdkd) Nd ypdqci npypdd oc yAoood Pascal 1o onoio vd
idd(ci cvd ovoido1d1o nivdkd dkcpdiov dpi0ov A c 10 0coci kdi unoAoyi(ci kdi vd
1unovci 1o coo po, 1o d0poiod kdi 1o yivcvo 1ov o1oiyciov 1ou nivdkd A.
PROGRAM PARADEIGMA_19;
USES CRT;
VAR I,SUM:INTEGER; GIN:LONGINT; MO:REAL;
A:ARRAY[1..10] OF INTEGER;
BEGIN
CLRSCR;
FOR I:=1 TO 10 DO
BEGIN
WRITE('DOSE A[',I,']= ');
READ(A[I]);
END;
SUM:=0;GIN:=1;
FOR I:=1 TO 10 DO
BEGIN
SUM:=SUM+A[I];
GIN:=GIN*A[I];
END;
MO:=SUM/10;
WRITELN('TO ATHROISMA EINAI : ',SUM);
WRITELN('TO GINOMENO EINAI : ',GIN);
WRITELN('O MESOS OROS EINAI : ',MO:5:2);
END.

[2] (Hdpdciyd oc nvdkd o ido1docov) Nd ypdqci npypdd oc
yAoood Pascal 1o onoio vd idd(ci cvd nivdkd dkcpdiov dpi0ov A, o
ido1docov 3 x 3 kdi vd unoAoyi(ci kdi vd 1unovci 1o coo po, 1o d0poiod
kdi 1o yivcvo 1ov o1oiyciov 1ou nivdkd A, kd0o kdi 1d o1oiycid 1ou
nivdkd kd1d ocipc kdi o1qAc.
PROGRAM PARADEIGMA_20;
USES CRT;
VAR I,J,SUM:INTEGER; GIN:LONGINT; MO:REAL;
A:ARRAY[1..3,1..3] OF INTEGER;
BEGIN
CLRSCR;
FOR I:=1 TO 3 DO
FOR J:=1 TO 3 DO
BEGIN
WRITE('DOSE A[',I,' ',J,']= ');
READ(A[I,J]);
END;
SUM:=0;GIN:=1;
FOR I:=1 TO 3 DO
FOR J:=1 TO 3 DO
BEGIN
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 42
-
SUM:=SUM+A[I,J];
GIN:=GIN*A[I,J];
END;
MO:=SUM/9;
FOR I:=1 TO 3 DO
BEGIN
FOR J:=1 TO 3 DO
WRITE(A[I,J],' ');
WRITELN;
END;
WRITELN('TO ATHROISMA EINAI : ',SUM);
WRITELN('TO GINOMENO EINAI : ',GIN);
WRITELN('O MESOS OROS EINAI : ',MO:5:2);
END.

E Ey yy yp pd dq qc c - - R Re ec co or rd ds s
H cyypdqq (record) civdi cvd ovoAo o1oiyciov, 1d onoid cv civdi (unoypco1ikd) 1ou iiou
1nou c1d 1ou. Td o1oiycid 1ou record Acyov1di ncd (fields). H qAooq cv record civdi
q dkAou0q:
TYPE <ONOMA TYHOY> = RECORD
<ONOMA HEAIOY 1>: <TYHOZ HEAIOY 1>;
<ONOMA HEAIOY 2>: <TYHOZ HEAIOY 2>;
...
<ONOMA HEAIOY N>: <TYHOZ HEAIOY N>;
END;
Hdpdcyd1d:
[1] A uno0coouc 1i 0cAouc vd cnccpydo1oc 1d o1oiycid 1ov onoudo1ov 1ou Tqd1o
TcyvoAoyid HAqpoqopikq kdi TqAcnikoivoviov. Td o1oiycid nou 0cAouc vd cyouc civdi:
Enovuo, Ovod, Api0 Mq1poou, XpovoAoyid Icvvqoq, OAo kdi Bd0oAoyid cv
Md0qd1o.
SURNAME NAME AM BIRTHDAY SEX GRADE
ZDTHPIOY IEDPIIOZ 145 1982 AIOPI 7,5
IEDPIIOY MAPIA 210 1981 KOPITZI 8,2
ZTAMATIOY NIKOAAOZ 172 1982 AIOPI 6,7

TYPE STUDENT = RECORD
SUR,NAME:STRING[20];
AM,BIRTH:INTEGER;
SEX:CHAR;
GRADE:REAL;
END;
VAR STUD:STUDENT;
Z1q ndpdndvo qAooq 1nou (type) opi(ouc 1ov 1no STUDENT c o1oiycid: 1o cnovuo
(SUR) kdi 1o vod (NAME) 1ou onoudo1q o ouoAoocipc qkou 20 ydpdk1qpov, 1ov
dpi0 q1poou (AM) kdi 1qv ypovoAoyid ycvvqoq (BIRTH) o dkcpdiou dpi0o, 1o qAo
(SEX) o ydpdk1qpd kdi 1q d0oAoyid (GRADE) o npdyd1ik dpi0.
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 43
-
Z1q VAR qAovouc id c1dAq1q STUD q onoid civdi 1nou STUDENT. To vod STUDENT
cv nopci vd ypqoionoiq0ci o1i cv1oAc 1ou npoypdd1o, dqo cyci qAo0ci o 1no
cocvov kdi yi o c1dAq1q. H dvdqopd 1ov nciov cv RECORD yivc1di c 1ov 1cAco1q .
H cv1oAq STUD.SUR := 'ZDTHPIOY'; ivci o1o ncio SUR 1ou RECORD STUD 1qv 1iq
ZDTHPIOY.
H cv1oAq STUD.NAME := 'IEDPIIOZ'; ivci o1o ncio NAME 1ou RECORD STUD 1qv 1iq
IEDPIIOZ.
H cv1oAq STUD.AM := 145; ivci o1o ncio AM 1ou RECORD STUD 1qv 1iq 145.
H cv1oAq STUD.BIRTH := 1982; ivci o1o ncio BIRTH 1ou RECORD STUD 1qv 1iq 1982.
H cv1oAq STUD.SEX := 'M'; ivci o1o ncio SEX 1ou RECORD STUD 1qv 1iq M (Male -> Aypi).
H cv1oAq STUD.GRADE := 7.5; ivci o1o ncio GRADE 1ou RECORD STUD 1qv 1iq 7.5.

Hcid 1ou RECORD nopci vd civdi kdi nivdkc. Z1o nio ndvo ndpdciyd 0d nopoodc vd
ciydc 1ou d0o (GRADE) 5 d0qd1ov on1c q qAooq 1ou RECORD 0d yiv1dv o cq:
TYPE STUDENT = RECORD
SUR,NAME:STRING[20];
AM,BIRTH:INTEGER;
SEX:CHAR;
GRADE:ARRAY[1..5] OF REAL;
END;
VAR STUD:STUDENT;
H cv1oAq STUD.GRADE[1] := 7,5 ivci o1o ncio GRADE[1] 1ou RECORD STUD 1qv 1iq 7.5.
(Bd0 yid 1o 1o d0qd).
Enioq o1oiycid cv nivdkd nopci vd civdi RECORDS. Z1o npo1o ndpdciyd nou
ypqoionoiqodc 0d nopoodc vd ciydc 1d o1oiycid yid 50 d0q1c on1c q qAooq 1ou
RECORD 0d yiv1dv o cq:
TYPE STUDENT = RECORD
SUR,NAME:STRING[20];
AM,BIRTH:INTEGER;
SEX:CHAR;
GRADE:REAL;
END;
VAR STUD:ARRAY[1..50] OF STUDENT;
H cv1oAq STUD[1].SUR := 'ZDTHPIOY'; ivci o1o ncio SUR 1ou RECORD STUD[1] 1qv 1iq
ZDTHPIOY. (Iid 1o 1o Znoudo1q)
H cv1oAq STUD[1].NAME := 'IEDPIIOZ'; ivci o1o ncio NAME 1ou RECORD STUD[1] 1qv 1iq
IEDPIIOZ. (Iid 1o 1o Znoudo1q)
H cv1oAq STUD[1].AM := 145; ivci o1o ncio AM 1ou RECORD STUD[1] 1qv 1iq 145. (Iid 1o
1o Znoudo1q)
H cv1oAq STUD.BIRTH := 1982; ivci o1o ncio BIRTH 1ou RECORD STUD[1] 1qv 1iq 1982.
(Iid 1o 1o Znoudo1q)
H cv1oAq STUD[1].SEX := 'M'; ivci o1o ncio SEX 1ou RECORD STUD[1] 1qv 1iq M (Male ->
Aypi). (Iid 1o 1o Znoudo1q)
H cv1oAq STUD[1].GRADE := 7.5; ivci o1o ncio GRADE 1ou RECORD STUD[1] 1qv 1iq 7.5.
(Iid 1o 1o Znoudo1q)
Enioq 0d nopoodc vd ciydc ouvudo q ouvudoo 1ov nio ndvo ncpin1oocov. n.y.
vd ciydc 1d o1oiycid yid 50 d0q1c kdi 1ou d0o (GRADE) 5 d0qd1ov on1c q qAooq
1ou RECORD 0d yiv1dv o cq:
!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 44
-
TYPE STUDENT = RECORD
SUR,NAME:STRING[20];
AM,BIRTH:INTEGER;
SEX:CHAR;
GRADE:ARRAY[1..5] OF REAL;
END;
VAR STUD:ARRAY[1..50] OF STUDENT;
H cv1oAq STUD[1].GRADE[1] := 7.5; ivci o1o ncio GRADE[1] 1ou RECORD STUD[1] 1qv 1iq
7.5. (To npo1o d0qd yid 1o 1
o
Znoudo1q)

[2] Nd ypdqci npypdd oc yAoood Pascal 1o onoio vd idd(ci 1d o1oiycid 5 onoudo1ov
(cnovuo, dpi0 q1poou, ypovoAoyid ycvvqoq kdi d0 o1o d0qd Hpoypdd1io I)
1ou Tqd1o TcyvoAoyid HAqpoqopikq kdi TqAcnikoivoviov. Nd unoAoyi(ci 1o coo po o1o
d0qd Aoc Acocvov kdi vd 1unovci 1d o1oiycid 1ov onoudo1ov nou cyouv d0
cydA1cpo dn 1o coo po.
PROGRAM PARADEIGMA_21;
USES CRT;
TYPE STUDENT=RECORD
SUR:STRING[20];
AM,BIRTH:INTEGER;
DD:REAL;
END;

VAR STUD:ARRAY[1..5] OF STUDENT;
I:INTEGER;SUM,MO:REAL;

BEGIN
CLRSCR;
SUM:=0;
FOR I:=1 TO 5 DO
BEGIN
WRITE('DOSE EPONYMO ',I,' OU SPOUDASTH : ');
READLN(STUD[I].SUR);
WRITE('DOSE AR. MHTROOU ',I,' OU SPOUDASTH : ');
READLN(STUD[I].AM);
WRITE('DOSE HM. GENNHSHS ',I,' OU SPOUDASTH : ');
READLN(STUD[I].BIRTH);
WRITE('DOSE BATHMO ',I,' OU SPOUDASTH : ');
READLN(STUD[I].DD);
SUM := SUM + STUD[I].DD;
END;
WRITELN;
MO := SUM / 5;
WRITELN('O MESOS OROS EINAI : ',MO:0:2);
WRITELN;
FOR I:=1 TO 5 DO
IF STUD[I].DD > MO THEN
WRITELN('EPONYMO:',STUD[I].SUR,'A.M.:',STUD[I].AM,'
HM.GENNHSHS:',STUD[I].BIRTH,'BATHMOS:',STUD[I].DD:0:2);
END.


!#%!&((&*,.(#. ,-!"#$%(#$) *,-.(/!,013
*4$"56#$.: 7&65/(13 *3/390.


- 45
-






E+G(1/<= )A)H,+;= .1) 0@A 456758

9;+,= I'

3#$(#)-"&<C&



B Bi i A Ai io oy yp pd dq q d d
[1] Apq N. MndkdAq, H IAoood Hpoypdd1ioo Pascal, ZyoAq Aioikqoq Kdi
Oikovoid, A.T.E.I. Hd1pd, 2009.
[2] A. Zicpiq, K. IidAopq, Z. Mndkoyidvvq, K. Z1d0nouAo, Hpoypdd1io
YnoAoyio1ov, T.E.E., Tocd HAqpoqopikq & Aik1ov H/Y, 1o KkAo, B' Tdq,
tkooq: OEAB, 2005.
[3] Rodnay Zaks, Eiodyoyq o1qv PASCAL kdi 1qv Turbo PASCAL, Ek1q: M. Ikiopd.
[4] Jacques Tiberghien, Eyycipiio PASCAL, Ek1q: M. Ikiopd.
[5] I. Z1pou(d, A. IkdpAd, Aoc Acocvov Opydvooq Apyciov & Tcyvikc
Hpoypdd1ioo oc IAoood Pascal & C++, Ekoci IDN.
[6] H. Hdnd(oyAou , Turbo Pascal 6, 7 & Eqdpoyc, Ekoci IDN.
[7] X. KoiAid, Aoc Acocvov kdi Opydvooq Apyciov, Ekoci Ncov TcyvoAoyiov.
[8] I. IcopydknouAo, Aoc Acocvov - tvvoic, Tcyvikc kdi AAypi0oi,
Hdvcnio1qidkc Ekoci Kpq1q.
[9] Niklaus Wirth, AAypi0oi & Aoc Acocvov, Ekoci KAcidpi0o.

You might also like