Professional Documents
Culture Documents
Nouvelle page 4
I. GII THIU.
II. CC PHN T C BN CA NGN NG PASCAL.
1. B K T.
2. T kha.
3. Tn chun.
4. Danh hiu t t.
III. CU TRC MT CHNG TRNH PASCAL.
IV. CC KIU D LIU C S : INTEGER, REAL, BOOLEAN, CHAR.
1. Khi nim.
2. Kiu s nguyn (Integer type).
3. Kiu s thc (Real type).
4. Kiu logic (Boolean type).
5. Kiu k t (Char type).
V. CC KHAI BO HNG, BIN, KIU, BIU THC, ....
1. Hng.
2. Bin.
3. Kiu.
4. Biu thc.
VI. CC TH TC XUT/NHP.
1. Cu lnh.
2. Cu trc tun t.
3. Cu trc r nhnh.
4. Cu trc lp.
BI C THM NHP & XUT D LIU TRONG TURBO PASCAL.
I. GII THIU
Pascal l tn ca mt trong cc ngn ng lp trnh cp cao thng dng. Ngn ng lp trnh Pascal c gio s
Niklaus Wirth trng i hc K thut Zurich (Thy s) thit k v cng b vo nm 1970. Niklaus Wirth t tn cho ngn
ng ny l Pascal tng nh n nh Ton hc v Trit hc Php th k 17 l Blaise Pascal, ngi pht minh ra mt
my tnh c kh n gin u tin ca con ngi.
Ngn ng Pascal c dng hin nay c nhiu im khc bit vi chun Pascal nguyn thy ca Gio s Wirth. Ty
theo quc gia hoc cng ty pht trin cho ra i cc chng trnh bin dch ngn ng Pascal nh:
ISO PASCAL (International Standards Organization) ca Chu u
ANSI PASCAL (American National Standards Institute) ca M
TURBO PASCAL ca hng BORLAND (M)
IBM PASCAL ca hng Microsoft (M)
http://vietsciences2.free.fr/giaokhoa/tinhoc/cobanvengonngulaptrinhpascal.htm
1/22
12/8/2014
Nouvelle page 4
v.v...
n nay, ngn ng Pascal pht trin n phin bn Turbo Pascal Version 7. Cc din gii v v d trong gio trnh
ny ch yu s dng chng trnh Turbo Pascal 5.5 - 7.0, hin ang c s dng rng ri Vit Nam.
II. CC PHN T C BN CA NGN NG PASCAL
1. B k t
- B 26 ch Latin:
Ch in:
A, B, C, ..., X, Y, Z
Ch thng:
a, b, c, ..., x, y, z
- B ch s thp phn:
0, 1, 2, 3, ..., 8, 9
- K t gch ni di:
+, -, *, /, =, <, >, (, ), [, }
2. T kha
WHILE... DO,
- T kha iu khin:
WITH, GOTO, EXIT, HALT
- T kha ton t:
AND, OR, NOT, IN, DIV, MOD
3. Tn chun
Tn chun l tn c nh ngha sn trong Pascal, nhng ngi ta c th nh ngha li nu mun. Trong Pascal ta
c cc tn chun sau y:
http://vietsciences2.free.fr/giaokhoa/tinhoc/cobanvengonngulaptrinhpascal.htm
2/22
12/8/2014
Nouvelle page 4
x;
aa v AA l mt;
XyZ_aBc v xyZ_AbC l mt
Khi vit chng trnh ta nn t cc danh hiu sao cho chng ni ln cc ngha ca i tng m chng biu th.
iu ny gip chng ta vit chng trnh d dng v ngi khc cng d hiu ni dung chng trnh.
III. CU TRC MT CHNG TRNH PASCAL
Hello;
{ Dng tiu }
USES
Crt;
http://vietsciences2.free.fr/giaokhoa/tinhoc/cobanvengonngulaptrinhpascal.htm
3/22
12/8/2014
Nouvelle page 4
VAR
PROCEDURE Input;
Begin
ClrScr;
{ Lnh xa mn hnh }
END.
Mt chng trnh Pascal c cc phn:
* Phn tiu :
Phn ny bt u bng t kha Program ri tip n l tn ca chng trnh v chm dt bng du chm phy (;)
Tn chng trnh phi c t theo ng qui cch ca danh hiu t t. Phn tiu c hay khng cng c.
* Phn khai bo d liu:
Trc khi s dng bin no phi khai bo bin , ngha l xc nh r xem bin thuc kiu d liu no. Mt
chng trnh Pascal c th c mt s hoc tt c cc khai bo d liu sau:
CONST : khai bo hng
...
TYPE
...
VAR
: khai bo cc bin
...
* Phn khai bo chng trnh con:
Phn ny m t mt nhm lnh c t tn chung l mt chng trnh con khi thn chng trnh chnh gi n th
c nhm lnh c thi hnh.
Phn ny c th c hoc khng ty theo nhu cu.
* Phn thn chng trnh:
http://vietsciences2.free.fr/giaokhoa/tinhoc/cobanvengonngulaptrinhpascal.htm
4/22
12/8/2014
Nouvelle page 4
Phn thn chng trnh l phn quan trng nht v bt buc phi c, phn ny lun nm gia 2 t kho l BEGIN v
END. gia l lnh m cc chng trnh chnh cn thc hin. Sau t kha END l du chm (.) bo kt thc chng
trnh.
* Du chm phy (;):
Du ; dng ngn cch cc cu lnh ca Pascal v khng th thiu c.
* Li ch thch:
Li ch thch dng ch gii cho ngi s dng chng trnh nh nhm trao i thng tin gia ngi v ngi, my
tnh s khng n li ch thch ny. Li ch thch nm gia k hiu: { } hoc (* *)
IV. CC KIU D LIU C S: INTEGER, REAL, BOOLEAN, CHAR
1. Khi nim
S BYTE
1
1
2
2
4
PHM VI
0 .. 255
- 128 .. 127
- 32768 .. + 32767
0 .. 65535
- 2147483648 .. 2147483647
5/22
12/8/2014
Nouvelle page 4
K HIU
+
*
/
DIV
MOD
SUCC (n)
PRED (n)
ODD (n)
NGHA
Cng
Tr
Nhn
Chia cho kt qu l s thc
Chia ly phn nguyn
Chia ly phn d
n+ 1
n- 1
TRUE nu n l
v FALSE nu n chn
R = ( [2.9E-39, 1.7E38]
S thc c th vit theo kiu c du chm thp phn bnh thng hoc vit theo kiu thp phn c phn m v phn
nh tr.
Cc php ton s hc c bn +, -, * , /d nhin c s dng trong kiu real.
Bng di y l cc hm s hc cho kiu s thc:
K HIU
ABS (x)
SQR (x)
SQRT(x)
SIN(x)
COS (x)
ARCTAN (x)
LN (x)
EXP (x)
NGHA
|x| : ly gi tr tuyt i ca s x
x2 : ly bnh phng tr s x
: ly cn bc 2 cua tr s x
sin (x) : ly sin ca x
cos (x) : ly cos ca x
arctang (x)
ln x : ly logarit nepe ca tr x (e ( 2.71828)
ex
ly phn nguyn ln nht khng vt qu tr s x
lm trn gi tr ca x, ly s nguyn gn x nht
TRUNC (x)
ROUND (x)
NOT A
A AND B
A OR B
A XOR B
TRUE
TRUE
TRUE
FALSE
FALSE
FALSE
TRUE
FALSE
TRUE
TRUE
FALSE
TRUE
http://vietsciences2.free.fr/giaokhoa/tinhoc/cobanvengonngulaptrinhpascal.htm
6/22
12/8/2014
Nouvelle page 4
FALSE
FALSE
TRUE
FALSE
TRUE
TRUE
FALSE
FALSE
TRUE
FALSE
TRUE
FALSE
Nhn xt:
Php AND (v) ch cho kt qu l TRUE khi c 2 ton hng l TRUE
Php OR (hoc) ch cho kt qu l FALSE khi c 2 ton hng l FALSE
Php XOR (hoc trit tiu) lun cho kt qu l TRUE khi c 2 ton hng l khc nhau v ngc li.
Cc php ton quan h cho kt qu kiu Boolean:
K HIU
<>
=
>
<
>=
<=
NGHA
khc nhau
bng nhau
ln hn
nh hn
ln hn hoc bng
nh hn hoc bng
NGHA
Cho s th t ca k t x trong bng m
Cho k t c s th t l n
Cho k t ng trc x
Cho k t ng sau x
a. nh ngha
Hng l mt i lng c gi tr khng i trong qu trnh chy chng trnh. Ta dng tn hng chng trnh c
r rng v d sa i.
b. Cch khai bo
<Tn
hng> = <gi tr ca hng> ;
CONST
http://vietsciences2.free.fr/giaokhoa/tinhoc/cobanvengonngulaptrinhpascal.htm
7/22
12/8/2014
Nouvelle page 4
V d 6.4:
CONST
Siso = 100;
X = xxx ;
2. Bin (variable)
a. nh ngha
Bin l mt cu trc ghi nh c tn ( l tn bin hay danh hiu ca bin).
Bin ghi nh mt d liu no gi l gi tr (value) ca bin. Gi tr ca bin c th c bin i trong thi gian s
dng bin.
S truy xut ca bin ngha l c gi tr hay thay i gi tr ca bin c thc hin thng qua tn bin.
V d 6.5:
Readln (x) ;
Writeln (x) ;
x := 9 ;
Bin l mt cu trc ghi nh d liu v vy n phi tun theo qui nh ca kiu d liu : mt bin phi thuc mt kiu
d liu nht nh.
b. Cch khai bo
<TnVAR
bin> : <Kiu bin> ;
V d 6.6:
VAR
a : Real ;
b, c : Integer ;
TEN : String [20]
X : Boolean ;
Chon : Char ;
Cn khai bo cc bin trc khi s dng chng trong chng trnh. Khai bo mt bin l khai bo s tn ti ca bin
v cho bit n thuc kiu g.
3. Kiu (Type)
a. nh ngha
Ngoi cc kiu nh sn, Pascal cn cho php ta nh ngha cc kiu d liu khc t cc kiu cn bn theo qui tc
xy dng ca Pascal.
b. Cch khai bo
http://vietsciences2.free.fr/giaokhoa/tinhoc/cobanvengonngulaptrinhpascal.htm
8/22
12/8/2014
Nouvelle page 4
TYPE
<Tn kiu> = <M t xy dng kiu> ;
V d 6.7:
TYPE
SoNguyen = Integer ;
Diem = Real;
Tuoi = 1 .. 100 ;
Color = (Red, Blue, Green) ;
Thu = (Sun, Mon, Tue, Wed, Thu, Fri, Sat) ;
v khi khai bo kiu g th ta c quyn s dng khai bo bin nh v d sau:
V d 6.8:
VAR
i, j : SoNguyen ;
Dtb : Diem ;
T : tuoi ;
Mau : Color ;
Ngay_hoc : Thu;
a. nh ngha
Mt biu thc l mt cng thc tnh ton bao gm cc php ton, hng, bin, hm v cc du ngoc.
V d 6.9:
5 + A * SQRT(B) / SIN(X)
(A AND B) OR C
b. Th t u tin
Khi tnh gi tr ca mt biu thc, ngn ng Pascal qui c th t u tin ca cc php ton t cao n thp nh
sau:
Mc u tin:
Cc php ton:
1.
2.
Php gi hm
3.
Not, -
4.
http://vietsciences2.free.fr/giaokhoa/tinhoc/cobanvengonngulaptrinhpascal.htm
9/22
12/8/2014
Nouvelle page 4
5.
+, -, OR, XOR
6.
V d 6.10:
Qui tc 2 :
Trong cc php ton c cng th t u tin th s tnh ton s c thc hin t tri sang phi.
Qui tc 3 :
a. Trong mt chng trnh Pascal, sau phn m t d liu l phn m t cc cu lnh. Cc cu lnh c
nhim v xc nh cc cng vic m my tnh phi thc hin x l cc d liu c m t v khai bo.
b. Cu lnh c chia thnh cu lnh n gin v cu lnh c cu trc.
(xem phn bi c thm)
- Cu lnh n gin
+ Vo d liu :
Read, Readln
+ Ra d liu :
Write, Writeln
+ Lnh gn
:=
- Cu lnh c cu trc
+ Lnh ghp :
BEGIN .. END
+ Lnh chn :
IF .. THEN .. ELSE
CASE .. OF .
+ Lnh lp
FOR .. TO .. DO
http://vietsciences2.free.fr/giaokhoa/tinhoc/cobanvengonngulaptrinhpascal.htm
10/22
12/8/2014
Nouvelle page 4
REPEAT .. UNTIL
WHILE .. DO
c. Cc cu lnh phi c ngn cch vi nhau bi du chm phy ( ; ) v Cc cu lnh c th vit trn mt dng hay
nhiu dng.
2. Cu trc tun t
a. Lnh gn (Assignment statement)
Mt trong cc lnh n gin v c bn nht ca Pascal l lnh gn. Mc ch ca lnh ny l gn cho mt bin khai
bo mt gi tr no cng kiu vi bin.
* Cch vit:
<Tn_bin> := <biu thc> ;
V d 6.12:
Khi khai bo
VAR
c : Char ;
i,j : Integer ;
x, y : Real ;
p, q : Boolean ;
th ta c th c cc php gn sau :
c := A ;
c := Chr(90) ;
i := (35+7)*2 mod 4 ;
i := i div 7 ;
x := 0.5 ;
x := i + 1 ;
q := i > 2*j +1 ;
q := not p ;
* ngha:
Bin v cc pht biu gn l cc khi nim quan trng ca mt h cc ngn ng lp trnh m Pascal l mt i din
tiu biu. Chng phn nh cch thc hot ng ca my tnh hin nay, l:
- Lu tr cc gi tr khc nhau vo mt nh ti nhng thi im khc nhau.
- Mt qu trnh tnh ton c th coi nh l mt qu trnh lm thay i gi tr ca mt (hay mt s) nh no , cho
http://vietsciences2.free.fr/giaokhoa/tinhoc/cobanvengonngulaptrinhpascal.htm
11/22
12/8/2014
Nouvelle page 4
n khi t c gi tr cn tm.
b. Lnh ghp (Compound statement)
Mt nhm cu lnh n c t gia 2 ch BEGIN v END s to thnh mt cu lnh ghp.
Trong Pascal ta c th t cc lnh ghp con trong cc lnh ghp ln hn bao ngoi ca n v c th hiu tng t
nh cu trc ngoc n ( ) trong cc biu thc ton hc.
* S :
http://vietsciences2.free.fr/giaokhoa/tinhoc/cobanvengonngulaptrinhpascal.htm
12/22
12/8/2014
Nouvelle page 4
13/22
12/8/2014
Nouvelle page 4
b. Lnh CASE .. OF
* Lu biu din:
ngha
.......................
...................................
END;
Ghi ch:
- Lnh CASE .. OF c th khng c ELSE
- Biu thc chn l kiu ri rc nh Integer, Char, khng chn kiu Real
- Nu mun ng vi nhiu gi tr khc nhau ca biu thc chn vn thi hnh mt lnh th gi tr c th vit trn cng
mt hng cch nhau bi du phy (,) : Gi tr k1, k2, ..., kp : Lnh k ;
V d 6.14:
PROGRAM Chon_mau ;
VAR
color : char ;
BEGIN
write (' Chn mu theo mt trong 3 k t u l R / W / B ') ;
readln ( color) ;
http://vietsciences2.free.fr/giaokhoa/tinhoc/cobanvengonngulaptrinhpascal.htm
14/22
12/8/2014
Nouvelle page 4
CASE color OF
'R' ,'r' : write (' RED = mu ') ;
'W', 'w' : write (' WHITE = mu trng ') ;
'B' , 'b' : write (' BLUE = mu xanh dng ') ;
END ;
Readln;
END.
4. Cu trc lp
a. Lnh FOR
Cu trc FOR cho php lp li nhiu ln mt dy lnh. S ln lp li dy lnh bit trc. Pht biu FOR c 2
dng:
FOR .. TO .. DO
m ln
m xung
15/22
12/8/2014
Nouvelle page 4
VAR
i : Integer ;
BEGIN
FOR i := 0 TO 9 DO Write (i) ;
Readln ;
END.
b. Lnh WHILE .. DO
* Lu ca lnh
16/22
12/8/2014
Nouvelle page 4
VAR
n, count : Integer ;
x, sum, average : real ;
BEGIN
count := 1 ;
sum := 0 ;
Write (' Nhp n = ') ;
readln (n) ;
WHILE count < n+1 DO
BEGIN
Write (' Nhp gi tr th' , count,' ca x = ' ) ;
readln (x) ;
sum := sum + x ;
count := count + 1 ;
END ;
average := sum/n ;
Writeln (' Trung bnh l =' , average : 10 : 3 ) ;
Writeln (' Nhn Enter thot ...' ) ;
Readln ;
END.
c. Lnh REPEAT .. UNTIL
Cu lnh REPEAT .. UNTIL dng trong cc trng hp khi bin iu khin khng c kiu ri rc v c bit trong
cc trng hp s ln lp khng bit trc.
17/22
12/8/2014
Nouvelle page 4
Nu iu kin logic l Sai (False) th lp li lnh cho n khi iu kin ng th mi thot ra khi cu trc REPEAT
.. UNTIL.
Nu c nhiu cu lnh th mi lnh ngn cch nhau bng du chm phy (;)Cng vic ca REPEAT v UNTIL khng
nht thit phi dng lnh ghp nhm t 2 lnh n tr ln thnh cng vic.
http://vietsciences2.free.fr/giaokhoa/tinhoc/cobanvengonngulaptrinhpascal.htm
18/22
12/8/2014
Nouvelle page 4
Lnh REPEAT .. UNTIL thng c s dng trong lp trnh, nht l lc ngi s dng mun tip tc bi ton
trng hp thay i bin m khng phi tr v chng trnh v nhn t hp phm Ctrl + F9 li.
V d 6.18:
Nhn 2 s a v b
PROGRAM Tich;
VAR
a, b : integer ;
CK : char ;
BEGIN
REPEAT
Write (' Nhp s a = '); Readln (a) ;
Write (' Nhp s b = '); Readln (b) ;
Writeln (' Tch s ca a x b l :' , a*b : 10 ) ;
Writeln (' Tip tc tnh na khng (CK) ? ');
Readln (CK) ;
UNTIL upcase(CK) = K; {hm chuyn i k t trong bin}
{CK thnh k t in hoa}
END.
BI C THM
- TURBO.TPL
- TURBO.TP
- GRAPH.TPU
- Cc file ha : *.BGI
http://vietsciences2.free.fr/giaokhoa/tinhoc/cobanvengonngulaptrinhpascal.htm
19/22
12/8/2014
Nouvelle page 4
tr gip ngi s dng, phm chc nng F10 c tc dng m cc Menu vi nhiu Options khc nhau. Ta cng c
th kch hot trn thanh Menu chnh bng cch kt hp phm <Alt - K t mc tng ng>, v d kch hot mc File, ta
nhn ng thi phm Alt- F, sau dng cc phm mi tn v nt Enter chn la v ra lnh thi hnh. Phm F1 tr gip th
hin cc thng tin trn mn hnh.
Ta c th s dng cc t hp phm to ra cc khi ch hoc cu lnh (trn mn hnh thy c s thay i mu)
ta c th sao chp, ct dn, xa b ...
Ctrl-K-B
nh du u khi
Ctrl-K-K
nh du cui khi
Ctrl-K-C
Ctrl-K-V
Ctrl-K-Y
Ctrl-K-W
Ctrl-K-R
Ctrl-K-H
Tt/ M khi
NGHA
Nhp cc bin x1, x2, ..., xn theo hng ngang
t bn phm (con tr khng xung hng).
http://vietsciences2.free.fr/giaokhoa/tinhoc/cobanvengonngulaptrinhpascal.htm
20/22
12/8/2014
Nouvelle page 4
READLN;
ASSIGN(F, File_Name);
M tp tin F c tn l File_Name
RESET(F);
Chun b c tp tin
CH := ReadKey ;
c mt k t t bn phm vo bin k t CH
KEYPRESSED
Mt hm c gi tr l TRUE nu c mt phm
c bm v l FALSE nu ngc li.
TH TC XUT
WRITE(x1, x2, ..., xn)
NGHA
Vit gi tr trong cc bin x1, x2, ..., xn ra mn hnh
theo hng ngang (con tr khng xung hng).
WRITELN;
Xung hng
WRITELN(I : n);
WRITELN(R : n : m);
WRITELN( abc... );
WRITELN (LST, x1, x2, ..., xn) Vit ra my in cc tr bin x1, x2, ..., xn
ASSIGN(F, File_Name)
M tp tin F c tn l File_Name
REWRITE(F) ;
chun b vit vo
CLOSE (F) ;
ng tp tin F
21/22
12/8/2014
Nouvelle page 4
http://vietsciences2.free.fr/giaokhoa/tinhoc/cobanvengonngulaptrinhpascal.htm
22/22