Giáo trình lập trình Pascal căn bản
– Giạo trçnh Láûp trçnh Pascal càn bn —
–
1
—
Trang 1
BI 1: GIÅÏI THIÃÛU NGÄN NGỈỴ PASCAL V CẠC VÊ DỦ ÂÅN
GIN
I. Xút xỉï ngän ngỉỵ Pascal:
Pascal l ngän ngỉỵ láûp trçnh cáúp cao do
Niklaus Wirth
, giạo sỉ âiãûn toạn trỉåìng
âải hc k thût Zurich
(Thy Sé)
, âãư xút nàm 1970 våïi tãn Pascal âãø k niãûm nh
toạn hc v triãút hc näøi tiãúng
Blaise Pascal
(ngỉåìi Phạp).
Ngän ngỉỵ láûp trçnh Pascal cọ âàûc âiãøm: ngỉỵ phạp, ngỉỵ nghéa âån gin v cọ tênh
chỉång trçnh soản tho, dëch v liãn kãút chỉång trçnh.
-
Turbo.tpl (.tpl - Turbo Pascal Library):
táûp tin thỉ viãûn lỉu cạc âån vë
(Unit)
chøn âãø chảy våïi Turbo.exe.
Mún sỉí dủng cạc lãûnh âäư ha, phi cọ cạc táûp tin sau:
-
Graph.tpu:
Âån vë
(Unit)
chỉïa cạc lãûnh âäư hoả.
-
Cạc táûp tin cọ pháưn måí räüng CHR (SANS.CHR, TRIP.CHR,
GOTH.CHR,.v.v.):
Chỉïa cạc kiãøu chỉỵ trong chãú âäü âäư hoả.
- Cạc táûp tin cọ pháưn måí räüng
BGI (EGAVGA.BGI, HERC.BGI, CGA.BGI, ):
âãø âiãưu khiãøn cạc loải mn hçnh tỉång ỉïng khi dng âäư hoả.
II. Khåíi âäüng:
– Giạo trçnh Láûp trçnh Pascal càn bn —
–
2
—
Trang 2
Ta cọ thãø khåíi âäüng Pascal tỉì
Windows hồûc MS-DOS
, chuøn âãún thỉ mủc
trçnh Pascal chỉa âỉåüc ci vo menu
Start
, bản cọ thãø dng
Windows Explorer
chuøn âãún táûp tin
BP.EXE
hồûc
TURBO.EXE
v khåíi âäüng Pascal bàòng cạch
chảy táûp tin ny.
III. Cạc phêm chỉïc nàng cáưn biãút ca ngän ngỉỵ Pascal:
-
F2:
Lỉu chỉång trçnh trong khi soản tho.
-
F3:
Tảo mäüt file måïi hồûc måí mäüt file c.
-
F9:
Dëch thỉí chỉång trçnh âãø kiãøm tra läùi.
-
Ctrl - F9:
Chảy chỉång trçnh.
-
Alt - F5:
Xem kãút qu chảy chỉång trçnh.
-
Alt - X:
Thoạt khi mn hçnh soản tho chỉång trçnh Pascal.
IV. Cáúu trục mäüt chỉång trçnh Pascal:
nãúu cọ dáúu cháúm theo sau cn
gi l khäúi chỉång trçnh chênh. Ngoi ra, nãúu sau tỉì khoạ
End
khäng cọ dáúu hồûc
cọ dáúu “;” thç âọ cọ thãø l khäúi chỉång trçnh con, khäúi lãûnh ca hm hồûc khäúi lãûnh
trong chỉång trçnh. Trong chỉång trçnh cọ thãø cọ nhiãưu khäúi lãûnh, tỉïc cọ thãø cọ
nhiãưu càûp tỉì khoạ
Begin
v
End.
2. Phỉång phạp khai bạo v täø chỉïc cáúu trục mäüt chỉång trçnh Pascal:
– Giạo trçnh Láûp trçnh Pascal càn bn —
–
3
—
Trang 3
Viãûc âàût cạc pháưn khai bạo v soản tho chỉång trçnh theo thỉï tỉû nhỉ sau:
Program
ProgName;
Uses
UnitName1, UnitName2, UnitNameN;
Label
LabelName1, LabelName2, LabelNameN;
Const
Const1 = n, Const2 = m, ConstN = k;
Type
Type1 = AnyType;
4 Vê dủ: mäüt cạch khai bạo tãn chỉång trçnh:
Program TimUSCLN;
Begin
End.
-
Uses:
Tỉì khoạ ny dng âãø khai bạo viãûc sỉí dủng
Unit (thỉ viãûn)
cho chỉång
trçnh. Thỉ viãûn l táûp håüp cạc hm, th tủc
do ngän ngỉỵ Pascal cung cáúp km theo
hồûc cng cọ thãø do ngỉåìi láûp trçnh tảo ra âãø sỉí dủng.
Ta khai bạo thỉ viãûn thäng
qua tãn ca thỉ viãûn, v trong chỉång trçnh âọ ta s cọ thãø sỉí dủng cạc th tủc hồûc
Giaùo trỗnh Lỏỷp trỗnh Pascal cn baớn
4
Trang 4
caùc haỡm coù trong thổ vióỷn õoù. Caùc thổ vióỷn chuỏứn cuớa ngọn ngổợ Pascal gọửm:
CRT,
DOS, GRAPH, GRAPH3, OVERLAY, PRINTER, SYSTEM
vaỡ
TURBO3
. Trong
õoù, thổ vióỷn
trón caùc kióứu dổợ lióỷu chuỏứn õóứ tióỷn sổớ duỷng trong vióỷc lỏỷp trỗnh. Caùc khaùi nióỷm vóử
dổợ lióỷu chuỏứn vaỡ phổồng phaùp taỷo kióứu dổợ lióỷu tổỷ taỷo seợ õổồỹc giồùi thióỷu ồớ caùc phỏửn
sau. Vờ duỷ mọỹt caùch õóứ khai baùo mọỹt kióứu dổợ lióỷu tổỷ taỷo:
Type Day = Array [1 7] of String[8];
-
Var:
Tổỡ khoaù duỡng õóứ khai baùo caùc bióỳn sọỳ õổồỹc sổớ duỷng trong chổồng trỗnh.
Bióỳn sọỳ laỡ caùc
giaù trở coù thóứ thay õọứi õổồỹc
trong suọỳt quaù trỗnh chaỷy cuớa chổồng
trỗnh. Khaùi nióỷm vóử bióỳn sọỳ rỏỳt quan troỹng trong vióỷc lỏỷp trỗnh
(khaùi nióỷm naỡy õổồỹc
trỗnh baỡy kyợ ồớ baỡi 3).
Mọỹt vờ duỷ vóử caùch khai baùo bióỳn:
– Giạo trçnh Láûp trçnh Pascal càn bn —
–
5
—
Trang 5
Var HoDem, Ten : String;
N : Integer;
Ư
Ghi chụ:
- Thỉï tỉû cạc khai bạo trãn l âiãưu bàõt büc, ta phi nàõm thỉï tỉû ny cho d mäüt säú
trong càûp dáúu
( )
phi cạch nhau bàòng dáúu ‘,‘ nãúu khäng cng loải, tỉïc l chùi k
tỉû phi âỉåüc cạch våïi biãún säú hồûc hm âỉïng trỉåïc nọ hay sau nọ bàòng dáúu ‘,‘.
Chùi k tỉû mún hiãøn thë ngun vàn phi âỉåüc âàût trong càûp dáúu ‘ ‘.
-
Write:
l th tủc xút näüi dung cạc thnh pháưn bãn trong càûp dáúu
( )
lãn mn
hçnh, th tủc ny cọ chỉïc nàng tỉång tỉû
Writeln
nhỉng khäng chuøn con tr xúng
dng.
-
End:
l tỉì khoạ cho biãút kãút thục chỉång trçnh.
- Cạc dng lãûnh nàòm giỉỵa
Begin
v
End
l lãûnh m chỉång trçnh cáưn phi thỉûc
hiãûn.
- Âãø xem chỉång trçnh trãn, ta chảy bàòng
Ctrl - F9
v xem lải bàòng
Alt - F5
.
– Giạo trçnh Láûp trçnh Pascal càn bn —
ClrScr;
ð
lau sảch mn hçnh
(Clear Screen).
- Cạc lãûnh
Writeln ( )
ð
xút ra mn hçnh näüi dung bãn trong dáúu
( )
v xúng
dng.
- Lãûnh
Readln;
ð
dỉìng chỉång trçnh, phỉång phạp ny dng âãø
hiãøn thë näüi
dung sau khi thỉûc hiãûn cạc lãûnh bãn trãn v chåì ngỉåìi dng áún phêm báút k âãø tiãúp
tủc thỉûc hiãûn cạc lãûnh kãú sau nọ.
Trong trỉåìng håüp trãn, kãú tiãúp l tỉì khoạ
End
nãn
chỉång trçnh âỉåüc kãút thục sau khi cọ mäüt phêm báút k âỉåüc áún.
4 Vê dủ 3:
Program TinhTong;
Uses CRT;
Begin
ClrScr;
Write ( ‘ 30 + 40 + 15 = ‘, 30 + 40 + 15 );
Readln;
I. Cạc tỉì khoạ
(Key word)
trong ngän ngỉỵ Pascal:
Cạc tỉì khoạ l cạc tỉì dng âãø khai bạo, âàût tãn cho âäúi tỉåüng trong Pascal, khi
ta âàût tãn cho âäúi tỉåüng no âọ, khäng âỉåüc âàût trng tãn våïi cạc tỉì khoạ.
Bng tỉì khoạ trong ngän ngỉỵ Pascal gäưm:
and, array, asm, begin, case, const, constructor, destructor, div, do, downto, else,
end, file, for, function, goto, if, implementation, in, inline, interface, label, mod, nil,
not, object, of, or, packed, procedure, program, record, repeat, set, shl, shr, string,
then, to, type, unit, until, uses, var, while, with, xor.
Turbo Pascal khäng phán biãût k tỉû thỉåìng hồûc hoa. Vê dủ, cạc cạch viãút sau cọ
nghéa nhỉ nhau:
Begin, BEGIN, begin, beGIN, bEGIN,
II. Cạc kiãøu dỉỵ liãûu cå bn:
1. Cạc kiãøu dỉỵ liãûu dảng säú ngun:
a. Kiãøu
Byte:
Kiãøu
Byte
thüc kiãøu dỉỵ liãûu biãøu diãùn cạc giạ trë säú ngun tỉì
0
âãún
255
. Kiãøu Byte chiãúm 1 byte trãn bäü nhåï.
b. Kiãøu
Integer:
Kiãøu
Integer
l kiãøu dỉỵ liãûu biãøu diãùn cạc giạ trë säú ngun tỉì
-
biãøu diãùn cạc giạ trë säú ngun tỉì
-2.147.483.648
âãún
2.147.483.647
. Kiãøu Longint chiãúm 4 bytes trãn bäü nhåï.
2. Cạc kiãøu dỉỵ liãûu dảng säú cọ pháưn biãøu diãùn tháûp phán:
a. Kiãøu
Single:
L táûp håüp cạc säú theo kiãøu dáúu ‘.‘ âäüng trong giåïi hản tỉì
1.5E -45
âãún
3.4 E38 (1,5 x 10
-45
âãún 3,4 x 10
38
).
Kiãøu Single chiãúm 4 bytes trãn bäü nhåï.
b. Kiãøu
Real:
L táûp håüp cạc säú theo kiãøu dáúu ‘.‘ âäüng trong giåïi hản tỉì
2.9E -39
âãún
1.7E 38 (2,9 x10
- 39
âãún 1,7 x 10
38
).
Kiãøu Real chiãúm 6 bytes trãn bäü nhåï.
– Giạo trçnh Láûp trçnh Pascal càn bn —
mäùi cạch sàõp xãúp âọ gi l bng m, thäng dủng nháút l bng m
ASCII (American
Standard Code for Information Interchange).
Bng m
ASCII
cọ
256
k tỉû âỉåüc
gạn m säú tỉ
ì 0 255,
mäùi k tỉû cọ mäüt m säú nháút âënh, vê dủ : k tỉû
‘A’
cọ m säú l
65
,
‘a’
cọ m säú l
97
trong bng m
ASCII,.v.v.
Âãø hiãøn thë bng m ASCII, bản chảy chỉång trçnh sau:
Program ASCI I_Table;
Uses CRT;
Var I : Integer;
Begin
ClrScr;
For I := 0 to 255 do
Write( I, ’ = ’ , CHR( I ), ’ ‘ );
Readln;
(2) Var Biãún_1, Biãún_2, Biãún_n: String [30];
Cạch khai bạo
(1)
s cho phẹp biãún
HoTen
nháûn täúi âa 255 k tỉû. Cạch
(2)
cho
phẹp biãún
HoTen
nháûn täúi âa
30 k tỉû.
Ư
Ghi chụ:
Cạch sỉí dủng kiãøu dỉỵ liãûu String s âỉåüc trçnh by chi tiãút åí bi 8.
III. Cạc hm xỉí l dỉỵ liãûu cå bn ca ngän ngỉỵ Pascal:
-
SQR(x)
bçnh phỉång ca mäüt säú ngun hay thỉûc.
-
ABS(x)
trë tuût âäúi ca x.
-
SQRT(x)
càn báûc hai ca x.
-
SIN(x)
tênh giạ trë Sin(x) våïi x l Radian.
-
COS(x)
cho giạ trë
‘A’
,
Pred(2)
cho giạ trë
1
,
Pred(True)
cho giạ trë
False
. Tuy nhiãn,
Pred(False)
lải khäng cho âỉåüc giạ trë no do
giạ trë False âỉïng
trỉåïc giạ trë True âäúi våïi kiãøu Boolean.
-
SUCC(x)
cho giạ trë âỉïng sau x, âäúi säú x cọ thãø l kiãøu logic, kiãøu ngun
hồûc kiãøu k tỉû. Vê dủ:
Succ(‘B’);
ð cho giạ trë
‘C’
,
Succ(2)
cho
giạ trë
3
,
Succ(False)
sọỳ chụn.
IV. Sổớ duỷng haỡm Random(n) õóứ lỏỳy mọỹt giaù trở nguyón ngỏựu nhión:
Haỡm
Random(n)
seợ traớ vóử mọỹt giaù trở nguyón maỡ maùy lỏỳy ngỏựu nhión coù giaù trở tổỡ
0 õóỳn n. Trong õoù,
n laỡ mọỹt sọỳ kióứu Word
tổùc laỡ trong khoaớn tổỡ
0 65535.
Trổồùc khi sổớ duỷng haỡm Random ta phaới goỹi thuớ tuỷc
Randomize
õóứ khồới taỷo bọỹ
taỷo sọỳ ngỏựu nhión
_________ oo _________
BAèI 3: HềNG S, BIN S, BIỉU THặẽC VAè CU LNH
N GIAN TRONG NGN NGặẻ PASCAL
I. Hũng sọỳ:
1. Khaùi nióỷm:
- Hũng sọỳ laỡ caùc giaù trở khọng thay õọứi trong quaù trỗnh chaỷy chổồng trỗnh.
- Coù hai phổồng phaùp sổớ duỷng hũng :
+ Gaùn trổỷc tióỳp giaù trở hũng.Vờ duỷ:
DT := R * R * 3.14; ChuVi := D * 3.14;
+ ỷt cho hũng mọỹt tón goỹi vaỡ trong quaù trỗnh soaỷn chổồng trỗnh ta duỡng tón
goỹi thay cho vióỷc duỡng trổỷc tióỳp giaù trở õoù. Vờ duỷ:
ChuVi := D * Pi;
trong õoù,
Pi
laỡ
mọỹt hũng sọỳ chuỏứn cuớa Pascal
(tổùc laỡ ta coù thóứ duỡng maỡ khọng cỏửn khai baùo vaỡ gaùn
F
Vờ duỷ mọỹt caùch khai baùo hũng sọỳ:
Const Pi = 3.1416, Max = 500;
4
Vờ duỷ: chổồng trỗnh tờnh chu vi õổồỡng troỡn coù sổớ duỷng hũng sọỳ
Pi
do ta õởnh
nghộa:
Program TinhCV_DT_HT;
Const Pi = 3.1416;
Var R :Real;
Begin
Giaùo trỗnh Lỏỷp trỗnh Pascal cn baớn
12
Trang 12
Write ( Nhap ban kinh hinh tron : );
Readln (R);
Writeln ( Dien tich hinh tron = , Pi * R * R );
Writeln ( Chu vi hinh tron = , 2 * R * Pi);
Readln;
End.
ệ Ghi chuù:
- Ta traùnh vióỳt:
z := Exp(1.23) + Sin(2.34) * Sin(2.34);
II. Bióỳn sọỳ:
1. Khaùi nióỷm:
- Laỡ õaỷi lổồỹng maỡ
giaù trở cuớa noù coù thóứ thay õọứi trong quaù trỗnh thổỷc hióỷn chổồng
trỗnh
. Bióỳn õổồỹc khai baùo bũng tổỡ khoaù
VAR.
- Bióỳn laỡ tón cuớa mọỹt vuỡng bọỹ nhồù lổu trổợ dổợ lióỷu.
- Bióỳn õổồỹc truy xuỏỳt trong chổồng trỗnh thọng qua tón bióỳn.
- Bióỳn laỡ mọỹt cỏỳu truùc ghi nhồù dổợ lióỷu vỗ vỏỷy phaới õổồỹc quy õởnh theo mọỹt kióứu
dổợ lióỷu naỡo õoù, vờ duỷ kióứu
Integer, Byte, Char,
2. Cuù phaùp khai baùo cho caùc bióỳn:
VAR Tón_bióỳn_1, Tón_bióỳn_2, Tón_bióỳn_n : Kióứu_dổợ_lióỷu_cuớa_bióỳn;
Trong õoù:
Tón
_
bióỳn
_
1
, Tón_bióỳn_2, Tón_bióỳn_
n
laỡ
tón
caùc bióỳn cỏửn khai baùo õóứ
sổớ duỷng trong chổồng trỗnh,
Kióứu
_
dổợ
Var a, b : Integer;
Begin
ClrScr;
Write( ‘ Nhap so thu nhat : ‘ );
Readln(a);
Write( ‘ Nhap so thu hai : ‘ );
Readln(b);
Write( ‘ Ket qua : ‘, a ,’ + ‘, b ,’ = ‘, a + b);
Readln;
End.
III. Biãøu thỉïc:
Mäüt biãøu thỉïc âỉåüc tảo båíi cạc
toạn tỉí (phẹp toạn)
v cạc
toạn hảng
dng âãø thãø
hiãûn mäüt cäng thỉïc toạn hc.
Toạn hảng
cọ thãø l
hàòng, hm
hồûc
biãún
.
4 Vê dủ: Sau khi khai cọ bạo:
Const Max = 120;
Var x: Integer;
ta cọ thãø viãút biãøu thỉïc sau:
5 + Max * Exp(x);
Trong âọ:
(not).
+ Cạc phẹp toạn nhán chia:
nhán (*), chia (/)
,
láúy pháưn ngun (div), láúy
pháưn dỉ (mod), phẹp v (and).
+ Cạc phẹp cäüng trỉì: cäüng
(+),
trỉì
(-),
phẹp hồûc
(or).
+ Cạc phẹp so sạnh:
<, <= , > , >= , = , < >.
- Biãøu thỉïc trong càûp dáúu ngồûc
( )
âỉåüc thỉûc hiãûn trỉåïc tiãn nãúu cọ.
- Cạc toạn tỉí cng thỉï tỉû ỉu tiãn thç âỉåüc thỉûc hiãûn tỉì trại qua phi.
4 Vê dủ viãûc sỉí dủng cạc toạn tỉí v toạn hảng:
3 + 5 * 3 = 18
(3 + 5) * 3 = 24
5 / 2 * 3 = 7.5
(5 + 2 > 4) and not (true or (5 - 3 = 8)) = false
( -b + sqrt(d) ) / 2 * a ( cọ nghéa:
)
IV. Cáu lãûnh âån gin:
Sau pháưn khai bạo dỉỵ liãûu l pháưn lãûnh ca chỉång trçnh. Pháưn ny xạc âënh cạc
2
+−
– Giạo trçnh Láûp trçnh Pascal càn bn —
–
15
—
Trang 1 5
Lãûnh gạn dng âãø gạn giạ trë ca mäüt biãøu thỉïc
(cọ thãø l hm, biãún hồûc giạ trë)
cho mäüt biãún.
Cụ phạp:
Biãún := biãøu_thỉïc;
F
Âáưu tiãn,
mạy tênh giạ trë ca biãøu thỉïc åí vãú phi,
sau âọ
, giạ trë tênh âỉåüc tỉì vãú
phi âỉåüc gạn cho vãú trại (biãún).
Ư Chụ :
-
Vãú trại ca lãûnh gạn chè cọ thãø l biãún.
Vê dủ: viãút
x + y = 7;
l sai vç vãú trại ca
cáu lãûnh ny l mäüt
biãøu thỉïc chỉï khäng phi l mäüt biãún
.
(3). WRITELN;
– Giạo trçnh Láûp trçnh Pascal càn bn —
–
16
—
Trang 1 6
Dảng
(1)
: In lãn mn hçnh giạ trë cạc biãøu thỉïc tải vë trê hiãûn hnh ca con tr
theo thỉï tỉû viãút trong lãûnh. Sau khi thỉûc hiãûn xong lãûnh
WRITE( );
con tr âënh vë
tải sau giạ trë
biãøu
_
thỉïc
_
n
ca cáu lãûnh.
Dảng
(2)
: In lãn mn hçnh giạ trë cạc biãøu thỉïc tải vë trê hiãûn hnh ca con tr
theo thỉï tỉû viãút trong lãûnh. Sau khi thỉûc hiãûn xong lãûnh
WRITELN( );
con tr
âënh vë tải âáưu dng kãú tiãúp.
Dảng
(3)
B : Boolean;
Begin
I := 123; R := 123.456; Ch := ‘A’; B := 2<5;
Writeln( I ); {1}
– Giạo trçnh Láûp trçnh Pascal càn bn —
–
17
—
Trang 17
Writeln( R); {2}
Writeln( 3.14 ); {3}
Writeln( 20 * 2.5); {4}
Writeln;
Writeln( Ch ); {5}
Writeln( B ); {6}
Writeln( #7 ); {7}
End.
F
Cạch viãút khäng quy cạch s canh näüi dung theo lãư bãn trại.
- Säú ngun âỉåüc viãút ra våïi säú chäù âụng bàòng säú chỉỵ säú gạn vo, kãø tỉì vë trê bãn
trại. Lãûnh {1} in ra:
123
- Säú thỉûc âỉåüc viãút ra våïi trçnh tỉû sau:
mäüt dáúu cạch
, tiãúp âãún l
mäüt säú pháưn
(2). Vê dủ vãư cạc dảng viãút cọ quy cạch:
Var
I : Integer;
R , Z : Real;
Ch : Char;
B : Boolean;
Begin
I := 123; R := 123.456; Ch := ‘A’; B := 2<5; Z := 543621.342;
Writeln( I :8 ); {1}
Writeln( -23564:8 ); {2}
Writeln( R:12:6); {3}
– Giạo trçnh Láûp trçnh Pascal càn bn —
–
18
—
Trang 1 8
Writeln( 35.123456789:12:6 ); {4}
Writeln( R:12 ); {5}
Writeln( Ch:5); {6}
Writeln(‘ABC’:5); {7}
Writeln( B:7 ); {8}
Writeln( Z:1:2 ); {9}
End.
F
Cạch viãút cọ quy cạch s canh näüi dung theo lãư bãn phi, nãúu thỉìa chäù thç pháưn
lãư bãn trại âỉåüc âãø tràõng.
- Lãûnh {1} v {2} dnh 8 k tỉû trãn mn hçnh âãø in cạc säú ngun.
- Lãûnh {3} v {4} dnh 12 k tỉû trãn mn hçnh âãø in cạc säú thỉûc våïi 6 säú l pháưn
. Trong
trỉåìng håüp
m > n
v âäü di ca säú låïn hån
m
thç säú âỉåüc tỉû âäüng canh phi. Trỉåìng
håüp
m > n
v âäü di ca säú nh hån
m
thç säú âỉåüc canh phi dỉ bao nhiãu k tỉû
mạy âãø träúng bãn trại.
Ư
Trỉåìng håüp trong cáu cáưn hiãøn thë dáúu ‘ thç ta phi viãút hai dáúu ‘ liãưn nhau (“).
4 Vê dủ:
Write( ‘ Don‘’t forget me ! ’ );
1 Kãút qu: Trãn mn hçnh hiãøn thë:
Don‘t forget me !
Ư Ghi chụ: Mún in dỉỵ liãûu ra mạy in ta dng lãûnh
Write
hồûc
Writeln
våïi tham
säú
LST
vo trỉåïc. Biãún
LST
âỉåüc khai bạo trong
Unit Printer
, vç váûy, âãø sỉí dủng
biãún.
Ngoi ra, ta cọ thãø sỉí dủng th tủc
Readln
âãø dỉìng chỉång trçnh v chåì ngỉåìi
dng áún mäüt phêm báút k âãø tiãúp tủc, k tỉû âỉåüc áún khäng hiãøn thë lãn mn hçnh.
Ư
Chụ :
- Cạc biãún trong th tủc
Readln
phi thüc kiãøu
ngun, thỉûc, k tỉû
hồûc
xáu k
tỉû
. Do âọ, ta khäng thãø nảp tỉì bn phêm giạ trë
True
hồûc
False
cạc biãún kiãøu
Boolean
.
- Dỉỵ liãûu nháûp vo phi tỉång ỉïng våïi kiãøu â khai bạo. Phi áún phêm
Enter
âãø
thỉûc hiãûn lãûnh nháûp sau khi g xong giạ trë cáưn nháûp.
4
Vê dủ 1: Våïi
a, b
l hai biãún ngun,
x
– Giạo trçnh Láûp trçnh Pascal càn bn —
–
20
—
Trang 20
Nãúu ta g
ABCDE1234567
v áún phêm
< Enter >
thç:
s1 = ‘ABCDE’, s2 =
‘12345’, s3 = ‘67’.
4
Vê dủ 3: Viãút chỉång trçnh tênh diãûn têch
S
ca hçnh thang våïi âạy di
a
, âạy
ngàõn
b
, chiãưu cao
h
, táút c âỉåüc nháûp tỉì bn phêm.
Program DienTichHinhThang;
Uses CRT;
Var a, b, h, s : Real;
Begin
.
Lãûnh ghẹp âỉåüc thỉûc hiãûn bàòng cạch thỉûc hiãûn tưn tỉû cạc cáu lãûnh nàòm giỉỵa
BEGIN
v
END.
Cụ phạp:
Begin
<cáu lãûnh 1>;
<cáu lãûnh 2>;
– Giạo trçnh Láûp trçnh Pascal càn bn —
–
21
—
Trang 21
<cáu lãûnh n>;
End;
Sau
<cáu lãûnh n>
cọ thãø cọ dáúu ‘;‘ hồûc khäng.
Lãûnh ghẹp cng l mäüt dảng cáu
lãûnh.
4 Vê dủ:
Begin
temp := x;
x := y;
y := temp;
FALSE
thç
<lãûnh 2>
âỉåüc thỉûc
hiãûn. Trỉåìng håüp trong cáu lãûnh khäng cọ pháưn
ELSE
v
<biãøu thỉïc logic>
cọ giạ
trë
FALSE
thç
<lãûnh 1>
khäng âỉåüc thỉûc hiãûn v mạy chuøn âãún cáu lãûnh kãú sau
lãûnh
IF
âọ.
Ư Chụ : cáu lãûnh trỉåïc tỉì khọa
ELSE
khäng âỉûåc cọ dáúu ‘;‘. Trỉåìng håüp cọ cáu
lãûnh ghẹp âỉûåc âàût kãú trỉåïc
ELSE
thç tỉì khoạ
END
trỉåïc
ELSE
khäng âỉåüc âàûtï
dáúu ‘;‘.
Giaùo trỗnh Lỏỷp trỗnh Pascal cn baớn
Readln(a);
Write( Nhap so b: );
Readln(b);
Write( Nhap so c: );
Readln(c);
Max := a;
If max < b then
Max := b;
If max < c then
Max := c;
Write( So lon hon la , max);
Readln;
End.
4
Vờ duỷ 3: Vióỳt chổồng trỗnh kióứm tra ba sọỳ õổồỹc nhỏỷp tổỡ baỡn phờm coù thóứ laỡ õọỹ daỡi
cuớa ba caỷnh trong mọỹt tam giaùc hay khọng? Nóỳu õuùng laỡ ba caỷnh cuớa tam giaùc thỗ
Giaùo trỗnh Lỏỷp trỗnh Pascal cn baớn
23
Trang 23
tờnh chu vi vaỡ dióỷn tờch tam giaùc, xeùt tam giaùc coù phaới laỡ tam giaùc
õóửu
,
cỏn
hay
khọng.
Var a, b, c, p, s : Real;
1: <lóỷnh
_
1>;
Tỏỷp
_
hũng
_
2: <lóỷnh
_
2>; Tỏỷp
_
hũng
_
n: <lóỷnh n>;
ELSE
<lóỷnh n +1>;
END;
Lóỷnh
CASE
coù thóứ khọng coù phỏửn
ELSE <lóỷnh n +1>;
Giaùo trỗnh Lỏỷp trỗnh Pascal cn baớn
24
kióứu vọ hổồùng õóỳm õổồỹc (nhổ nguyón, logic, kyù tổỷ, lióỷt kó).
3. Tỏỷp hũng naỡo coù chổùa giaù trở tổồng õổồng vồùi giaù trở cuớa
<bióứu thổùc>
thỗ lóỷnh sau
dỏỳu : cuớa tỏỷp hũng õoù õổồỹc thổỷc hióỷn, sau õoù maùy thoaùt khoới lóỷnh
CASE.
4. Trong trổồỡng hồỹp tỏỳt caớ caùc tỏỷp hũng khọng coù chổùa giaù trở tổồng õổồng vồùi giaù
trở cuớa
<bióứu thổùc>
thỗ lóỷnh sau tổỡ khoùa
ELSE
õổồỹc thổỷc hióỷn. Trổồỡng hồỹp naỡy nóỳu
khọng coù caớ phỏửn
ELSE <lóỷnh n+1>;
thỗ lóỷnh
CASE
naỡy õổồỹc thoaùt vaỡ khọng coù
lóỷnh naỡo sau dỏỳu : õổồỹc thổỷc hióỷn.
4
Vờ duỷ 1: Vióỳt chổồng trỗnh nhỏỷp vaỡo mọỹt õióứm kióứm tra tổỡ baỡn phờm vaỡ in kóỳt
quaớ xóỳp loaỷi: loaỷi
Yóỳu (dổồùi 5 õióứm),
loaỷi
Trung bỗnh (5, 6 õióứm),
loaỷi
Khaù (7, 8
õióứm),
loaỷi
Gioới (9, 10 õióứm).