TRNGăĐHPHMăVĔNăĐNG
KHOA CÔNG NGHTHÔNG TIN
BÀI GING:
NGÔN NG LP TRÌNH PASCAL
Nguyn Ánh
Tháng 12/2013
2
Mc lc
LIăGIIăTHIU ........................................................................................................ 4
CHNGă 1.ă CÁCă KINă THCă CHUNGă Vă NGỌNă NGă L TRÌNHă
PASCAL...................................................................................................................... 6
1.1.ăGiiăthiu .......................................................................................................... 6
1.2.ăCácăbcălpătrìngiiăbƠiătoán........................................................................ 6
1.3.ăCácăkháiănimăăvƠăcácăthƠnhăphầnăcăbn ........................................................ 7
1.4.ăCuătrúcătổngăquátăcmtăchngătrình: ........................................................ 8
CHNGă2.ăCÁCăKIUăDăLIUăĐNăGIN .................................................... 10
2.1.ăTngăquanăvăcácăkiuădăliuătronTurboăPascal ........................................ 10
2.2.ăCácăkiuădăliuăđnăginăchun .................................................................... 11
2.3.ăKiuălităkêăvƠăkiuăđonăcon ......................................................................... 13
2.4. CácăhƠmăvƠăthătcăchun ............................................................................... 15
BÀIăTCHNGă2. ............................................................................................. 16
CHNGă3.ăBIUăTHCăVÀăCỂUăLNHăĐNăGIN ...................................... 18
3.1.ăBiuăthc......................................................................................................... 18
3.2.ăCơuălnh .......................................................................................................... 19
BÀIăTCHNGă3. ............................................................................................. 23
CHNG 4.ăCỂUăLNHăCịăCUăTRỎC............................................................. 27
4.1.ăLnhăghép ....................................................................................................... 27
4.2.ăLnIFă(cơuălnhărănnh). .......................................................................... 27
4.3.ăLnhăCASEă(cơuălnlaăchn) ..................................................................... 29
4.4.ăLnFORă(Lặpăbitătrcăsăln). ................................................................. 31
4.5.ăLnhăREPEATă(lặpăviăsălnăkhônbitătrc). .......................................... 33
4.6.ăLnWHILEă(lặpăviăsălnăkhônbitătrc). ............................................ 35
BÀIăTCHNGă4. ............................................................................................. 37
CHNGă5.ăKIUăDăLIUăTPăHP,ăKIUăMNGKIUăXỂU .................. 42
5.1.ăKiuătpăhp ................................................................................................... 42
5.2.ăKiuămng ...................................................................................................... 44
5.3.ăKiuăxơu.......................................................................................................... 50
BÀIăTCHNGă5 .............................................................................................. 54
CHNGă6.ăCHNGăTRÌNHăCON .................................................................... 62
6.1.ăCácăkháiănimămăđầu. ................................................................................... 62
6.2.ăThătc. ........................................................................................................... 63
3
6.3.ăBinătoƠnăcvƠăbinăđaăphng. ................................................................. 66
6.4. Hàm. ............................................................................................................... 69
6.5.ăChngătrìnhăconălnnhau. .......................................................................... 70
6.6.ăChngătrìnhăconăđăqui. ................................................................................ 71
6.7.ăĐnăvăchngătrìnhăcngiădùng. ............................................................ 73
BÀIăTCHNGă6. ............................................................................................. 81
CHNGă7.ăKIUăBGHIă(RECORD) ............................................................. 83
7.1.ăĐnnghĩaăkiuăvƠăkhaiăbáoăbinăkiuăbnăghi. ............................................. 83
7.2.ăCácăthaoătácătrênăkiuăbnăghi: ....................................................................... 84
7.3.ăKiuăbnăghiăbinăđổi. .................................................................................... 86
BÀIăTCHNG 7. ............................................................................................. 90
CHNGă8.ăKIUăTTINă(FILE)....................................................................... 91
8.1.ăĐnnghĩaăkiuăvƠăkhaiăbáoăbin. .................................................................. 91
8.2.ăMtăsăthătvƠăhƠmăchun. ......................................................................... 92
8.3.ăTpătinăđnhăkiu ............................................................................................. 94
8.4.ăTpătinănăbn ............................................................................................. 101
BÀIăTCHNG 8. ........................................................................................... 108
CHNGă9. KIUăCONăTRă(POINTER) .......................................................... 111
9.1.ăMăđầu. ......................................................................................................... 111
9.2.ăKiuăconătr .................................................................................................. 112
9.3.ăDanhăsáchăliênăkt. ....................................................................................... 119
BÀIăTCHNG 9 ............................................................................................ 124
TÀIăLIUăTHAKHO ....................................................................................... 124
4
LI GII THIU
NgônăngălpătrìnPascalădoăNiklauWirthăphátătrinăcnnăngăAlgol-
60ă(nnăngăEuler)ăđraăvƠoănĕ1970.ăPascalălƠănnă ngăđặcăbităthíchăhpă
choăkilpătrìncóăctrúcăvƠălƠănnăngăchoăphépămôătăthutătoánărtăthu
tinChoă đnă nayPascală vnăđcă n đă gindyă vă lpă trìnhă tron mtăsă
trngăPhổăthônvƠăĐiăhcătrênăthăgii.
BƠiăginnƠycuncpăchoăSinviênăchuyênănnS phmătinăcácăki
thcăbnăvănnăngălpătrìnPascalăcălýăthuytăvƠăbƠiătpăthựnh.ă Trong
bƠiăgin nyăchúniăcóăđthêmămtăsă bƠiătpătinăhcă11, đă sinviênă
quen dần vcácădnbƠiăăphổ tng. NiădunnƠyăđcăhcătrongăphmăviă3 n
chỉ,ăphvụăchoăvicădyăvƠăhcătheoăphngăphápăđƠoătoătínăch.
BƠiăginbaoăgmă9ăchnnhăsau:
Chn1.ăCácăkinăthchunvănnăngălpătrìnPascal: Giiăthiuăcă
thƠnphầnăcăbnăcmtănnăngălpătrình.ăCuătrúcătổnquátăcaămt chngă
trìnhăvităbngănnăngălpătrìnPascal.ăCáchăbiênădchăvƠăthựcăthmtăchngă
trìnvităbnngônăngălp trình Pascal.
Chn2.ăCácăkidăliuăđnăginChnngiiăthitổnquanăvă
cácăkiuădăliuăcaăPascalăvƠăđiămôătăcácăkiu dăliđnăginăchun ng
cácăkiuădăliuădoăngiănđnnghĩa.ăĐiăviămiăkiuădăliuăgiiăthiuăcáchă
khaiăbáo,ăchăsădụngminăgiáătrăncácăphépătoánătácăđnlênăkiuădăli
đó.
Chn3.ăBiuăthvƠăuălnđnăgin:ăChnnyăđraăcácăkinăthcă
văcácăthƠnphầnătthƠnmtăbiuăthtronPascalcáchătácăđngăcaăcácătoá
tălênăcácătoánăhntronmtăbiuăthc.ăĐnthiăgiiăthiuăcácăloiăuălnđ
gin,ăcáchăkhaiăbáoăvƠăsădụngăcácăcơuălnnƠyătrongăchngătrình.
Chn4.ăuălncóăcuătrúc:ăNiădunchnnyăđraăcácăcơuălnhă
cóăcuătrúc.ăTronmiălnđraăcúăphápăctừnlnh.ăTipăđnăphân tích cách
sădụngăcácăcơuălnnhăthănƠoăchoăphùăhp.
Chn5.ăKidălitpăhp,ăkiuămng,ăkiuău: Niădungăchnn
đraăcácăkiuădăliuăcóăcuătrúc. Tronmiăkiuădăliuăđcúăphápăctừngă
kiu,ăcáchăđnhănghĩvƠăkhaiăbáoăchúng môătăcácăthaoătácătrênătừngăkidăli
đó.
Chn 6.ă Chn trìn con Chn nƠyă đ raă cáchă đn nghĩ mtă
chng trìnconădnthătc,ăchntrìnconădnmĐnthiăhnd
cáchăsădụngăcácăchngătrìnhăconănƠyătronmtăchngătrìnhăsaoăchoăphùăhp.
Chn7.ăKiuăbnăghi:ăNiădunchnnƠyăgiiăthiuăkiuădăkiuăb
ghi.ăCáchăđnnghĩvƠăkhaiăbáoăkiuăbnăghiăvƠăcácăthaoătácătrênăkiuăbnăghi.
5
Chn8. KiuătpătinChnnƠyăgiiăthiuăkiuădăliuătpătinăcùncă
thao tác trên tpătinăđnhăkiuăvƠătpătinănăbn.
Chn9.ăKiuăconătr:ăChnnƠgiiăthiuăkiuăconătrălƠămtăkiuădă
liđn(binăđng).ăCáchăđnhănghĩvƠăkhabáoăkiu conătrăng các thao tác
trên nó.
ĐăhoƠnăthƠnbƠiăginnƠy,ăchúntôiăxinăchơnăthƠncmănăThầyăNguy
Thanhă Tiênă vƠăThầyăNguynăHLcăđƣăđóngópăýăkinăvƠăschchoăhoƠ
chỉn bƠiă ging.ă Tuyă nhiên doă hnă chă vă thiă gian cũn nhă trìn đă nênă bƠ
ginchắcăchắnănănhiuăsaiăsót.ăChúniămonnhnăđcăcácăýăkinăđóngópă
caăcácăbnăđc,ănhằmăhoƠnăthinăhnănniădungăbƠiăginnƠy.
NguynăÁnh