1. Trang chủ
  2. » Văn Hóa - Nghệ Thuật

Ngôn ngữ Lập trình Pascal

125 16 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 125
Dung lượng 781,89 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Ngoài ra, TurboăPascalăchoăphépătaăkhaiăbáoăcácăbi năconătr ăkhôngăđ nhăki uă v iăki uăchuẩnăđƣăđ căđ nhănghĩaălƠăPOINTER.ăCácăbi năconătr ălo iănƠyăchỉăđ că s ădụngăđ ăqu năđ aăchỉăc aă[r]

Trang 1

TR NGăĐ IăH CăPH MăVĔNăĐ NG

KHOA CÔNG NGH THÔNG TIN

BÀI GIẢNG:

NGÔN NGỮ LẬP TRÌNH PASCAL

Nguy n Ánh

Tháng 12/2013

Trang 2

2

Mục lục

L IăGI IăTHI U 4

CH NGă 1.ă CÁCă KI Nă TH Că CHUNGă V ă NGỌNă NG ă L Pă TRÌNHă PASCAL 6

1.1.ăGi iăthi u 6

1.2.ăCácăb căl pătrìnhăgi iăbƠiătoán 6

1.3.ăCácăkháiăni măăvƠăcácăthƠnhăphầnăc ăb n 7

1.4.ăC uătrúcătổngăquátăc aăm tăch ngătrình: 8

CH NGă2.ăCÁCăKI UăD ăLI UăĐ NăGI N 10

2.1.ăTổngăquanăv ăcácăki uăd ăli uătrongăTurboăPascal 10

2.2.ăCácăki uăd ăli uăđ năgi năchuẩn 11

2.3.ăKi uăli tăkêăvƠăki uăđo năcon 13

2.4 CácăhƠmăvƠăth ătụcăchuẩn 15

BÀIăT PăCH NGă2 16

CH NGă3.ăBI UăTH CăVÀăCỂUăL NHăĐ NăGI N 18

3.1.ăBi uăth c 18

3.2.ăCơuăl nh 19

BÀIăT Pă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 nhăIFă(cơuăl nhăr ănhánh) 27

4.3.ăL nhăCASEă(cơuăl nhălựaăch n) 29

4.4.ăL nhăFORă(Lặpăbi tătr căs ălần) 31

4.5.ăL nhăREPEATă(lặpăv iăs ălầnăkhôngăbi tătr c) 33

4.6.ăL nhăWHILEă(lặpăv iăs ălầnăkhôngăbi tătr c) 35

BÀIăT PăCH NGă4 37

CH NGă5.ăKI UăD ăLI UăT PăH P,ăKI UăM NG,ăKI UăXỂU 42

5.1.ăKi uăt păh p 42

5.2.ăKi uăm ng 44

5.3.ăKi uăxơu 50

BÀIăT Pă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 ătục 63

Trang 3

3

6.3.ăBi nătoƠnăcụcăvƠăbi năđ aăph ng 66

6.4 Hàm 69

6.5.ăCh ngătrìnhăconăl ngănhau 70

6.6.ăCh ngătrìnhăconăđ ăqui 71

6.7.ăĐ năv ăch ngătrìnhăc aăng iădùng 73

BÀIăT PăCH NGă6 81

CH NGă7.ăKI UăB NăGHIă(RECORD) 83

7.1.ăĐ nhănghĩaăki uăvƠăkhaiăbáoăbi năki uăb năghi 83

7.2.ăCácăthaoătácătrênăki uăb năghi: 84

7.3.ăKi uăb năghiăbi năđổi 86

BÀIăT PăCH NG 7 90

CH NGă8.ăKI UăT PăTINă(FILE) 91

8.1.ăĐ nhănghĩaăki uăvƠăkhaiăbáoăbi n 91

8.2.ăM tăs ăth ătụcăvƠăhƠmăchuẩn 92

8.3.ăT pătinăđ nhăki u 94

8.4.ăT pătinăvĕnăb n 101

BÀIăT PăCH NG 8 108

CH NGă9 KI UăCONăTR ă(POINTER) 111

9.1.ăM ăđầu 111

9.2.ăKi uăconătr 112

9.3.ăDanhăsáchăliênăk t 119

BÀIăT PăCH NG 9 124

TÀIăLI UăTHAMăKH O 124

Trang 4

4

L I GI I THI U

Ngônăng ăl pătrìnhăPascalădoăNiklausăWirthăphátătri năc aăngônăng 60ă(ngônăng ăEuler)ăđ aăraăvƠoănĕmă1970.ăPascalălƠăngônă ng ăđặcăbi tăthíchăh pă

ăAlgol-choăki uăl pătrìnhăcóăc uătrúcăvƠălƠăngônăng ăchoăphépămôăt ăthu tătoánăr tăthu nă

ti n.ă Choă đ nă nay,ă Pascală v nă đ că dùngă đ ă gi ngă d yă v ă l pă trìnhă trongă m tă s ă

tr ngăPhổăthôngăvƠăĐ iăh cătrênăth ăgi i

BƠiăgi ngănƠy,ăcungăc păchoăSinhăviênăchuyênăngƠnhăS ph mătinăcácăki nă

th căc ăb năv ăngônăng ăl pătrìnhăPascalăc ălýăthuy tăvƠăbƠiăt păthựcăhƠnh.ă Trong bƠiăgi ngă nầyăchúngătôiăcóăđ aăthêmă m tăs ă bƠiăt pătinăh că11, đ ă sinhă viênă lƠmăquen dần v iăcácăd ngăbƠiă ăphổ thông N iădungănƠyăđ căh cătrongăph măviă3 tín chỉ,ăphụcăvụăchoăvi căd yăvƠăh cătheoăph ngăphápăđƠoăt oătínăchỉ

BƠiăgi ngăbaoăg mă9ăch ngănh ăsau:

Ch ngă1.ăCácăki năth căchungăv ăngônăng ăl pătrìnhăPascal: Gi iăthi uăcácă

thƠnhăphầnăc ăb năc aăm tăngônăng ăl pătrình.ăC uătrúcătổngăquátăc aăm t ch ngătrìnhăvi tăbằngăngônă ng ăl pătrìnhăPascal.ăCáchăbiênăd chăvƠăthựcăthiăm tăch ngătrìnhăvi tăbằngăngônăng ăl p trình Pascal

Ch ngă2.ăCácăki uăd ăli uăđ năgi n:ăCh ngănầyăgi iăthi uătổngăquanăv ăcácăki uăd ăli uăc aăPascalăvƠăđiăsơuămôăt ăcácăki u d ăli uăđ năgi năchuẩn cùng cácăki uăd ăli uădoăng iădùngăđ nhănghĩa.ăĐ iăv iămỗiăki uăd ăli uăgi iăthi uăcáchăkhaiăbáo,ăcáchăs ădụng,ămi năgiáătr ăcùngăcácăphépătoánătácăđ ngălênăki uăd ăli uă

đó

Ch ngă3.ăBi uăth căvƠăcơuăl nhăđ năgi n:ăCh ngănầyăđ aăraăcácăki năth că

v ăcácăthƠnhăphầnăt oăthƠnhăm tăbi uăth cătrongăPascal,ăcáchătácăđ ngăc aăcácătoánă

t ălênăcácătoánăh ngătrongăm tăbi uăth c.ăĐ ngăth iăgi iăthi uăcácălo iăcơuăl nhăđ nă

gi n,ăcáchăkhaiăbáoăvƠăs ădụngăcácăcơuăl nhănƠyătrongăch ngătrình

Ch ngă4.ăCơuăl nhăcóăc uătrúc:ăN iădungăch ngănầyăđ aăraăcácăcơuăl nhăcóăc uătrúc.ăTrongămỗiăl nhăđ aăraăcúăphápăc aătừngăl nh.ăTi păđ năphân tích cách

s ădụngăcácăcơuăl nhănh ăth ănƠoăchoăphùăh p

Ch ngă5.ăKi uăd ăli uăt păh p,ăki uăm ng,ăki uăxơu: N iădungăch ngănầyă

đ aăraăcácăki uăd ăli uăcóăc uătrúc Trongămỗiăki uăd ăli uăđ aăcúăphápăc aătừngă

ki u,ăcáchăđ nhănghĩaăvƠăkhaiăbáoăchúng và môăt ăcácăthaoătácătrênătừngăki uăd ăli uă

đó

Ch ngă 6.ă Ch ngă trìnhă con:ă Ch ngă nƠyă đ aă raă cáchă đ nhă nghĩaă m tă

ch ng trìnhăconăd ngăth ătục,ăch ngătrìnhăconăd ngăhƠm.ăĐ ngăth iăh ngăd năcáchăs ădụngăcácăch ngătrìnhăconănƠyătrongăm tăch ngătrìnhăsaoăchoăphùăh p

Ch ngă7.ăKi uăb năghi:ăN iădungăch ngănƠyăgi iăthi uăki uăd ăki uăb năghi.ăCáchăđ nhănghĩaăvƠăkhaiăbáoăki uăb năghiăvƠăcácăthaoătácătrênăki uăb năghi

Trang 5

5

Ch ngă8.Ki uăt pătin:ăCh ngănƠyăgi iăthi uăki uăd ăli uăt pătinăcùngăcácăthao tác trên t pătinăđ nhăki uăvƠăt pătinăvĕnăb n

Ch ngă9.ăKi uăconătr :ăCh ngănƠyăgi iăthi uăki uăconătr ălƠăm tăki uăd ă

li uăđ ngă(bi năđ ng).ăCáchăđ nhănghĩaăvƠăkhaiăbáoăki u conătr ăcùng các thao tác trên nó

Đ ăhoƠnăthƠnhăbƠiăgi ngănƠy,ăchúngătôiăxinăchơnăthƠnhăc mă năThầyăNguy năThanhă Tiênă vƠă ThầyăNguy năH iăL căđƣăđóngă gópăýăki nă vƠăs aăch aăchoăhoƠnăchỉnhă bƠiă gi ng.ă Tuyă nhiên,ă doă h nă ch ă v ă th iă gian,ă cũngă nh ă trìnhă đ ă nênă bƠiă

gi ngăchắcăchắnăcònănhi uăsaiăsót.ăChúngătôiămongănh năđ căcácăýăki năđóngăgópă

c aăcácăb năđ c,ănhằmăhoƠnăthi năh năn aăn iădungăbƠiăgi ngănƠy

Nguy năÁnh

Trang 6

6

CH NG 1 CÁC KI N TH C CHUNG V NGÔN NG L P TRÌNH

PASCAL

Mở đầu: Gi iăthi uăcácăki năth căchungăv ăngônăng ăl pătrìnhăPascal.ăCácăthƠnhă

phầnăc ăb năc aăm tăngônăng ănh :ăB ăkýătự,ătừ,ătừăkhóa,ătên,ătênăchuẩn.ăC uătrúcătổngăquátăc aăm tăch ngătrìnhăvi tăbằngăngônăng ăl pătrìnhăPascal Cách biên d chă

vƠăthựcăthiăm tăch ngătrình vi tăbằngăngônăng ăl p trình Pascal

Mục tiêu: H căxongăch ngănƠyăSinhăviênă

- Hi uăđ căcácăkháiăni măc ăb năv ăngônăng ăl pătrìnhăPascal

- Bi tăcách s ădụngăTurboăPascală7.0

- Bi tăt o,ăl uăvƠăm ăt pătinăch ngătrình

- Bi tăbiênăd chăch ngătrìnhăvƠăthựcăthiăch ngătrình

- Bi tăđ căcácăkýătựăđ căs ădụngătrongăNNLTăPascal

- Bi tăc uătrúcăc aăm tăch ngătrìnhăPascal

1.1 Gi i thi u

b ăvƠo đầuănĕmă1970.ă(L yătênăPascalălƠăđ ăkỷăni mănhƠătoánăh căPascală ăth ăkỷăXVII)

BanăđầuănóăchỉălƠăm tăngônăng ăd yăh c,ăv ăsauăvìănh ngă uăđi mămƠănhi uăhƣngăđƣăphátătri nănóăthƠnhăcácăphầnăm măriêngăbi tăđ ăphụcăvụăchoăcôngăvi căriêngă

c aămình

Turbo Pascală lƠă m tă s nă phẩmă c aă hƣngă Borlandă (Mỹ)ă đ că phátă tri nă từăPascal.ă Đơyă lƠă m tă ngônă ng ă l pă trìnhă b că caoă cóă c uă trúc,ă đ că dùngă phổă bi nătrongăn căcũngănh ătrênăth ăgi iăđặcăbi tălƠătrongălĩnhăvựcăd yăh căl pătrình

TurboăPascalăg măcácăfileăchínhăsau:

- Turbo.exe:ăLƠăfileăch ngătrìnhăso năth o,ăd chăvƠăliênăk tăv iăb ngăch n

- Turbo.tplă:ăLƠăfileăth ăvi năl uăcácăđ năv ăch ngătrìnhăchuẩnăđ ăch yăv iăTurbo.exe

- Graph.tpu:ăLƠăfileăđ năv ăch ngătrìnhăx ălíăđ ăh a

- *.chr : Là các fileăch aăcácăfontăch ătrongăch ăđ ăd ăh a

- *.bgiăăăăăăăă:ăLƠăfileăch aăcácăfontăch ămƠnăhình

NgoƠiăraăcònăcácăfileăkhácăv iăcácăch cănĕngăriêngăbi t.ă

1.2.1 Các bước lập trình tổng quát

- B că1:ăPhơnătíchăbƠiătoán;ăXácăđ nhăd ăli uăvƠo,ăd ăli uăraălƠmăc ăs ăchoă

vi căhìnhăthƠnhăgi iăthu t

Trang 7

7

- B că2:ăXơyădựngăthu tătoánă:ăTrênăc ăs ăxácăđ nhăd ăli uăvƠo, ra;ăcácăgi ăthi tăc aăbƠiătoán,ăcácăm iăliênăh ăgi aăchúngăvƠănh ngăki năth căliênăquanătaăcầnă

đ aăraăthu tătoánăt ngă ng

- B că3:ăTổăch căd ăli uăvƠăl păch ngătrìnhătheoăthu tătoánăđƣăđ ăra

1.2.2 Các bước lập trình và thực hiện (với Turbo Pascal)

Bước 1: Kh iăđ ngăTurboăPascală(Turbo.exe)

Bước 2: So năth oăch ngătrình

Bước 3: Biênăăd chă(nh nătổăh păphím ALT - F9)

- N uăthƠnhăcôngăthìăchuy năquaăb că4

- N uăkhôngăthƠnhăcôngăquayăl iăb că2

Bước 4: Ch yăth ăch ngătrình (CTRL - F9)

- N uăt tăchuy năquaăb că5

- N uăch aăt tăthìăquayăv ăb că2

Bước 5: GhiăvƠoăđĩa,ăD chăthƠnhăfileă*.exe

Bước 6: K tăthúc

(M ă fileă m iă đ ă so nă th oă ch ngă trìnhă khácă hoặcă thoátă kh iă Turboă Pascală bằngă

vi cănh nătổăh păphímăALTă- Xăđ ăthoát)

1.3.1 Bộ ký tự (dùng để soạn thảo chương trình)

Baoăg măcácălo iăkýătựăsauăđơy:

Cácăch ăcái:ăa z;ăăăA Ză(Tuyănhiênăkhiăso năth oăch ngătrình,ăTurboăPascalăkhôngăphơnăbi tăch ăhoaăhayăch ăth ng)

LƠăătừădƠnhăriêngăc aăPascalăv iăch cănĕngăvƠăcúăphápăđ căquyăđ nhăsẵn.ăVìă

v yăkhiăs ădụngăph iătheoăđúngăquyăđ nh, vƠăkhôngăđ căs ădụngăcácătừăkhóaăvƠoăcácăcôngăvi căkhác

Víădụ:ăBegin,ăend, if, then, const, var, function

Trang 8

LƠătênămƠăTurboăPascalăđƣăđ nhănghĩaăsẵnăđ ăchỉăcácăhƠm,ăhằng,ăbi n,ăth ătụcă

th ăvi năc aănó

Chú ý: Turbo Pascal cho phépă ng iă s ă dụngă cóă th ă đ nhă nghĩaă l iă cácă tênăchuẩnăđ ădùngăvƠoăcácăcôngăvi căkhác

(Chú ý: tênăc aăch ngătrìnhăph iătheoăđúngăquyăcáchătênăc aăTurboăPascal)

1.4.2 Phần khai báo và định nghĩa:

Uses: Dùngăđ ăkhaiăbáoăcácăUnită(đ năv ăch ngătrình)ăc aăTurboăPascal.ăN uăcóănhi uăunităthìăs ădụngăd uăphẩyă","ăđ ăngĕnăcách

Const:Dùngăđ ăkhaiăbáoăcácăhằng

Cúăpháp:ăTên_hằngă=ăGiáătr

Trang 9

9

Type:Dùngăđ ăđ nhănghĩaăcácăki uăd ăli uăc aăng iădùng

Cúăpháp:ăTênă_ki uă=ăđ nhănghĩaăcụăth ăchoătừngăki u

Var:Khaiăbáoăbi n

Cú pháp: Tên bi n:ăKi u_d ăli u;

(Hoặcăkhaiăbáoătrựcăti păkhôngăthôngăquaăki u.)

N uăcóănhi uăbi năcùngăki uăthìăs ădụngăd uăphẩyă“,”ăđ ăngĕnăcách

Proedure:Đ nhănghĩaăch ngătrìnhăconăd ngăth ătục

Function:Đ nhănghĩaăch ngătrìnhăconăd ngăhƠm

cóăcácăphầnăkhaiăbáoăvƠăđ nhănghĩaăphùăh p,ăcóănh ngăch ngătrìnhăcóăphầnăkhaiăbáo,ăđ nhănghĩaănƠyămƠăkhôngăcóăkhaiăbáo,ăđ nhănghĩaăkiaăhoặcăng căl i,ăth măchíăcóănh ngăch ngătrìnhăkhôngăcầnăđ năm tăkhaiăbáoăhayăđ nhănghĩaănƠoăc

Trang 10

- Đ aăraăm tăs ăth ătụcăvà hàm chuẩnătrênăki uăd ăli uăđ năgi năchuẩn và cáchă s ă dụngă cácă th ă tụcă vƠă hƠmă chuẩn nầy đ ă vi tă m tă bi u th că s ă h că thôngă

th ngăsangăcúăphápăc aăngônăng ăPascal

Mục tiêu: H căxongăch ngănƠyăSinhăviên

- Bi t đ cătênăc aăm tăs ăki uăd ăli uăchuẩn:ăănguyên,ăthực,ăkíătự,ălogicăbi tă

đ căgi iăh năbi uădi năc aămỗiălo iăki uăd ăli uăđó

- Bi tăcách khai báo bi năđ ădùngătrongăch ngătrìnhătr căkhiăs ădụng

- Bi tăc uătrúcăchungăc aăkhaiăbáoăbi nătrongăngônăng ăPascal

- Bi tăs ădụngăm tăs ăth ătụcăvƠăhƠmătrênăcácăki uăd ăli u

Trong Turbo Pascal các ki uăd ăli uăđ căchiaălƠmă2ălo i:

- Cácăki uăd ăli uăđ năgi n

- Cácăki uăd ăli uăcóăc uătrúc

2.1.1 Các kiểu dữ liệu đơn giản gồm:

Trang 11

11

2.2.1 Kiểu logic:

- Từăkhóa:ăBoolean

- Mi nătr :ăChỉăcóă2ăgiáătr ălƠătrueăvƠăfalse

- Các phép toán:ăAND,ăOR,ăNOT,ăXOR.ă(Xemăb ngăd iăđơy)

(Quyă căFalseăbéăh năTrue.)

Cóă5ăki uăs ănguyên:

- Mi năgiá tr vƠătừăkhóaădùngăđ ăkhaiăbáoăc aăcácăki uăđóănh ăsau:

Trang 12

(1) Trênăd ăli uăki uăs ănguyênăkhôngăt năt iăphépăchiaăthựcă(/)

(2).ă Thôngă th ngă cácă s ă nguyênă đ că bi uă di nă trongă h ă c ă s ă th pă phơn.ă

N uămu năbi uădi nătrongăc ăs ă16ăthìătaăthêmăd uă"$"ăphíaătr c.ăVíădụă$Aă(t călƠă

s ă10ătrongăh ăth păphơn)

(3).ăV i ki uăs ănguyênăcònăcóăcácăphépătoánăAND,ăOR,ăNOT,ăXOR

2.2.3 Kiểu số thực: Cóă5ăki uăs ăthực

- Mi năgiá tr vƠătừăkhóaădùngăđ ăkhaiăbáoăc aăcácăki uăđóănh ăsau:

Real 2.9*10-39 1.7*1038 6 byte Single 1.5*10-47 3.4*1038 4 byte Double 5*10-324 1.7*10380 8 byte Extended 3.4*10-4932 1.1*104932 10 byte Comp -9.2*1018 9.2*1018 4 byte

N uăm tăs ă<-maxăhoặcă>ămaxăthìăs ăkhôngăbi uădi năđ căvƠăxemănh ălƠătrƠnăs

N uăm tăs ă>-minănh ăh nă0ăhoặcăl năh nă0ănh ăh năminăthìăđ căxemănh ălƠă0 (2).ăCh ăđ ămặcăđ nhăc aă TurboPascală lƠăchỉăchoăphépă lƠmă vi că v iăki uăs ăthựcă REAL.ă Mu nă s ă dụngă cácă ki u khácă taă vƠoă b ngă ch nă OPTIONă -> COMPILER ->ă NUMERICă PROCESINGă r iă đánhă d uă [x]ă vƠoă mụcă 8087/80287.ăKhiăso năth oăch ngătrìnhătaăph iăthêmăvƠoăchỉăth ăd chă{$N+}ă vƠoăđầuăch ngătrìnhăngayăsauăphầnătiêuăđ

(3).ăTrongămáyătínhăs ăthựcăđ căbi uădi năd iăhaiăd ng:

- D uăch mătĩnh,ăvíădụ:ă3.14,ăă123.456

Trang 13

soăsánh:ăT ngătựăs ănguyênăg m: =,ă<,ă>,ă>=ă(l năh năhoặcăbằng),ă<=ă(nh ăh năhoặcăbằng),ă<>ă(khácănhau)

quyăđ nhăkhiăbi uădi năchúngăph iăđặtătrongăcặpăd uănháyăđ n,ăăvíădụăă'a',ă'abc'

- Phép so sánh:Mu năsoăsánhă2ăkýătựătaăsoăsánhăcácămƣăASCIIăt ngă ngăc aăchúng,ăkýătựănƠoăcóămƣăASCIIăl năh năđ căxemălƠăl năh n.ăVíădụă'a'ă>ă'A'ăVìă97ă>ă

65

lƠăm tăt păh păđ măđ căvƠătrênăđóăt năt iăquanăh ăth ătự.ăVíădụ:ăKi uăByte,ăki uăInteger;ăki uăChar;ăki uăBoolean

2.3 Ki u li t kê vƠ ki u đo n con

2.3.1 Kiểu liệt kê:

a Định nghĩa kiểu và khai báo biến:

- Định nghĩa kiểu:

Type ten_kieu = (Danh sách các giá trị);

Gi iăthích:ă

- ten_kieuăkýăhi uăchoătênăki uădoăng iădùngătựăđặt

- Danhăsáchăcácăgiáătr ălƠăt păh păcácăgiáătr ăđ căphơnăcáchăb iăd uăphẩyă","

- Khai báo biến:

Var ten_bien : ten_kieu;

Trang 14

Ví dụ: Var gioitinh: (nam, nu)

Mau: (xanh, do, tim, vang);

b Các tác động lên dữ liệu kiểu liệt kê:

- Cóăth ăthựcăhi năphép gán giáătr ăchoăbi n

tr ăđiăsau

Ví dụ: V iăkhaiăbáoă ătrênăthìăsună<ămon;ăxanh<ădo

c Chú ý:

(1).ăKhôngăth ănh p,ăxu tăv iăd ăli uăki uăli tăkê

(2).ăGiáătr ăki uăli tăkêăth ngăđ cădùngăđ ălƠmăchỉăs ăchoăl nhălặpăfor,ăcácă

tr ngăh păch nălựaătrongăl nhăCase,ăhoặcăchỉăs ăchoăm ng

2.3.2 Kiểu đoạn con:

a Định nghĩa kiểu và khai báo biến:

- Định nghĩa kiểu:

Type ten_kieu = hang_duoi hang_tren;

Gi iăthích:

Hang_duoiăt călƠăkýăhi uăgiáătr ăhằngăc năd i,ăhang_trenăt călƠăgiáătr ăhằngă

c nătrênăt tă nhiênă lƠăhang_trênă hang_duoiăvƠăph iăcóăcùngăki uăvôăh ngăđ mă

đ c

- Khai báo biến:

Var ten_bien : ten_kieu; (ten_kieuăđƣăđ căkhaiăbáo)

Trang 15

2.4.1 Các hàm trên kiểu số nguyên và số thực:

Gi ăs ăxălƠăm tăs ănƠoăđóăkhíăđóătaăcóăcácăhƠmăsauăđơy:

ROUND(x) - Choăgiáătr ălƠăs ănguyênăgầnăxănh tă

TRUNC(x) - Choăgiáătr ălƠăphầnănguyênăc aăs ăxăăăă

INT(x) - Choăgiáătr ălƠăphầnănguyênăc aăs ăxă

FRAC(x) - Choăgiáătr ălƠăphầnăth păphơnăc aăs ăx

ABS(x) - Choăgiáătr ălƠăgiáătr ătuy tăđ iăc aăs ăx

SIN(x) - Choăgiáătr ălƠăăsinx

COS(x) - - Choăgiáătr ălƠăcosx

EXP(x) - Choăgiáătr ălƠăex

SQR(x) - Choăgiáătr ălƠăăx2

SQRT(x) - Choăgiáătr ălƠăcĕnăb căhaiăc aăs ăxă(x>=0)

LN(x) - Choăgiáătr ălƠălnxă(x>0)

2.4.2 Các hàm khác:

Gi ăs ăvarălƠ bi năcóăki uăvôăh ngăđ măđ c

INC(var, r)  Tĕngăgiáătr ăc aăbi năvarălênăr

DEC(var, r)  Gi măgiáătr ăc aăbi năvarăđiărăă(varăcóăki uăvôăh ngăđ mă

đ c)

PRED(var)  Choăgiáătr ăđiăngayătr căvar.ăVíădụ:ăpred('c')ă='b'

SUCC(var)  Choăgiáătr ăđiăngayăsauăvar.ăVíădụ:ăsucc('c')='d'

ORD(ch) - Choăgiáătr ălƠămƣăASCIIăc aăkýătựăchă(chăki uăchar)

CHR(n) - ChoăkýătựăcóămƣăASCIIăbằngăs ănă(0<=n<=255)

UPCASE(ch)  Choăk tăqu ălƠăăch ăchănh ngălƠăch ăinăhoaă(chălƠăch ăcái) ODD(n) - Choăk tăqu ăTRUEăn uănălƠăs ălẻ,ăbằngăFALSEăn uănălƠăs ăchẵnă(nălƠăs ănguyên)

ki uăs ănguyên

Trang 16

16

RANDOM(n)  Choăk tăqu ălƠăm tăs ăng uănhiênăl yătrongăđo nă[0,n]ă(nălƠă

s ă nguyên;ă ă Chúă ýă đ ă s ă dụngă đ că hƠmă nƠyă thìă tr că đóă ph iă kh iă t oă th ă tụcăRandomize)

KEYPRESSED tr ăv ăgiáătr ătrueăn uăcóănh năphímăb tăkỳ,ăng căl iăchoăgiáătr ăfalseă(mu năs ădụngăph iăkhaiăbáoăunităcrt)

2.4.3 Sử dụng hàm để viết các biểu thức bằng cú pháp của Turbo Pascal:

1 ab = ebln(a) = exp(b*ln(a)) (a,b>0)

2 logab = logae*logeb = 1/ln(a)*ln(b)

3 (x3+ sin(x2y))2 = sqr(sqr(x)*x+sin(sqr(x)*y))

BÀI T P CH NG 2

1 N uăchălƠăm tăbi năki uăcharăthìăcácăhƠmăsauăđơyăchr(ord(ch)),ăord(chr(ch)) cho

k tăqu ăgì?ăT iăsao?

2 Tìmăcôngăth căđ ăđổiăm tăkýătựălƠăch ăhoaăthƠnhăch ăth ng

3 DùngăcácăhƠmăvƠăcácăphépătoánăđ ăbi uădi năcácăcôngăth căsau:

a.ăCh ă'A'ăvƠăch ă'a'

b.ăCh ăă'A'ăăvƠăch ăs '1'

a var X, P: byte; b var P, X: real;

c var P: real; d var X: real;

X: byte; P: byte;

Trang 17

17

8 Đ ătínhădi nătíchăSăc aăhìnhăvuôngăcóăc nhăAăv iăgiáătr ănguyênănằmătrong ph măviătừă100ăđ nă200,ăcáchăkhaiăbáoăSănƠoăd iăđơyălƠăđúngăvƠăítăt năb ănh ănh t

a var S: integer; b var S: real; c var S: word;

d var S: longint; e var S: boolean;

1.ăChr(ord(ch))ăchoăkăqu ălƠăch,ăăcònăord(chr(ch))ăsaiăcúăphápăvìăhƠmăchrăcóăđ iălƠă

m tăs ăki uăbyte

2 Chr(ord(ch)+ord('a') - ord('A'))ă(trongăđóăchălƠăkýătựăch ăhoaăcầnăđổi)

4 a k=250;

b.ăKhôngăxácăđ nhăvìătrƠnăs

c.ăKhôngăxácăđ nhăvìăsaiăki u

5.ăXemăb ngămƣăASCIIăvƠăcáchăsoăsánhăcácăkýătự

Trang 18

- Gi iăthi uăcácă lo iăcơuă l nhăđ năgi n,ăcáchăkhaiă báo vƠăs ădụngă cácăcơuă

l nhănƠyătrongăch ngătrình.ăĐ ngăth iămôăt ăcáchăs ădụngăcácăcơuăl nhănƠyăbằngăcácăvíădụăminhăh a

Mục tiêu: H căxongăch ngănƠyăSinhăviênă

- Bi tă đ că nh ngă kháiă ni mă v ă phépă toán, bi uă th că s ă h c,ă hƠmă s ă h căchuẩn,ăbi uăth căquanăh

- Nắmăđ căcácăphépătoánăthôngădụngătrongăngônăng ăl pătrình

- Bi tădùngăcácăcơuăl nhăvƠăcácăphátăbi uăcóăth ădùngătrongăthơnăc aăch ngătrình

- Bi tăcácăl nhănh păd ăli uătừăbƠnăphím,ăl nhăxu tăd ăli uăraămƠnăhìnhămáyătính và máy in

Bi nă lƠă đ iă l ng cóă th ă thayă đổiă giáă tr ă vƠoă từngă th iă đi mă khácă nhauă c aă

ch ngătrình.ăBi nădùngăđ ăl uătr ăd ăli u,ăbi năđ căkhaiăbáoăsauătừăkhóaăVAR.ă

Vi căkhaiăbáoăcácăbi nălƠănhằmăcungăc păcácăvùngănh ăđ ăl uătr ăd ăli uătrongăqúaătrìnhăthựcăhi năch ngătrình

3.1 3 Toán tử:

Là các phép toánătácăđ ngălênăd ăli uă(hayăcònăg iălƠătoánăh ng)

Ví dụ: Các phép +, -, *, /, and, or, not

Trang 19

(3).ăM tăbi uăth căchoăk tăqu ăbằngăs ăđ căg iălƠăbi uăth căs ăh c,ăchoăk tă

qu ăki uălogicăthìăđ căg iălƠăbi uăth călogic

Ví dụ: Tính giá tr ăc aăbi uăth căsau:

((18 mod 4 div 2 < 3) >= false) = true

((2 div 2 < 3) >= false) = true

< 3) >= false) = true

(true >= false) = true

true = true - true

3.2 Cơu l nh

3.2.1 Phân loại câu lệnh:

TrongăPascalăcóăhaiălo iăcơuăl nhăđóălƠăcơuăl nhăđ năgi năvƠăcơuăl nhăcóăc uătrúc

Trang 20

20

- Cơuăl nhăđ năgi năg m:ăL nhăgán,ăl nhăxu t,ănh păd ăli u,ăl nhănh yăvƠăl iă

g i ch ngătrìnhăconăd ngăth ătục

- Cơuăl nhăcóăc uătrúcăg m:ăL nhăghép,ăl nhăr ănhánh,ăl nhălựaăch n,ăcácăl nhălặpăvƠăl nhăWITH

3.2.2 Câu lệnh đơn giản:

a Lệnh gán:

Cú pháp: ten_bien := bt;

Gi iăthíchăbtălƠăkýăhi uăchoăbi uăth c

Ýănghĩa:ăL nhăs ăthựcăhi năvi căgánăgiáătr ăc aăbtăchoăbi năten_bien

Chú ý:

(1).ăBi năten_bienăvƠăgiáătr ăc aăbtăph iăcùngăki uăd ăli u

(2).ăV ătráiăluônălƠăbi năcònăv ăph iălƠăbi uăth c,ăđ oăng căl iălƠăsaiăcúăpháp Víădụ:ăa:=ă5;ăăSă:ă=ăsă+ăd*i;ăi:=i+1;

b Lệnh ghi dữ liệu lên màn hình:

(1):ăLầnăl tăghiălênămƠnăhìnhăgiáătr ăc aăcácăbi uăth căăt iăv ătríăconătr

(2): T ngătựăd ngă(a)ăchỉăkhácă ăchổăsauăkhiăghiăxongăconătr ăđ căđ aăv ăđầuădòngăti pătheo

(3):ăKhôngăghiăgìălênămƠnăhìnhăc ,ăchỉălƠmăthaoătácăđ aăconătr ăv ăđầuădòngă

Trang 21

* Với dữ liệu kiểu số thực:

Ch ăđ ămặcăđ nhăc aăPascalălƠăghiătheoăd ngăd uăch măđ ng

Mu năghiăs ăthựcătheoăd ngăd uăch mătĩnhătaădùngăcáchăghiăsauăđơy:

đ căghiălênăđƣăđ căquyătròn (víădụătrên)ănh ngăgiáătr ăthựcăc aănóăv năđ căl uă

(1):ăChoăphépălầnăl tănh păd ăli uăchoăcácăbi n

(2):ăT ngătựăd ngă(a)ăchỉăkhácă ă la khiănh păxongăconătr ăđ căđ aăv ăđầuădòngăti pătheo

(3):ăăChỉălƠmăthaoătácăt mădừngăch ngătrình,ăch ăgõăphímăEnterăđ ăti pătục

Chú ý:

(1).ăNguyênătắcă nh păd ăli uă lƠătrongăcơuă l nhăcóă baoă nhiêuăbi năthìătaăph iă

nh păđ ăgiáătr ăchoăb yănhiêuăbi n.ăGi aăgiáătr ăc aăbi n nƠyăvƠăbi năkiaăđ căngĕnăcáchăb iăítănh tălƠăm tăkýătựătrắng;ăk tăthúcăvi cănh păbằngăcáchănh năphímăENTER

Trang 22

22

(N uăch aănh păđ ăgiáătr ăchoăcácăbi năthìăch ngătrìnhăv năti pătụcădừngăl iăch ăă

nh pă ti p,ă chừngă nƠoă nh pă đ ă m iă ti pă tục,ă Víă dụă Khiă gặpă l nhă READ(a,b,c);

ch ngătrìnhăt mădừngăch ănh păd ăli uăvƠăkhiăđóătaănh păchẳngăh nă3ă 9  12 ) (2).ăThôngăth ngăkhiăthựcăhi năch ngătrìnhăđ ă nh păd ăli uătaănênăghiălênămƠnăhìnhăcơuăh ngăd năchoăng iăthựcăhi năch ngătrình,ănghĩaălƠătr căcơuăl nhăREAD, READLNăănênăcóăm tăcơuăl nhăWRITE

Ví dụ: Write(' nhâp n nguyên duong : '); readln(n);

(3).ă Cơuă l nhă READLNă th ngă đ că s ă dụngă t mă dừngă ch ngă trìnhă (mƠnăhình)ă đ ă xemă k tă qu ,ă vìă v yă th ngă đ că s ă dụngă ă cu iă c aă m tă ch ngă trìnhă(tr cătừăkhóaă"END.")

(4).ăV iăd ăli uăki uălogicăkhôngăchoăphépănh pătừăbƠnăphím

Các ví dụ:

Ví dụ 1: Vi tăch ngătrìnhănh păvƠoăchi uădƠiăvƠăchi uăr ngăc aăm tăhìnhăch ă

nh tăr iăinălênămƠnăhìnhăchuăviăvƠădi nătíchăc aăhìnhăch ănh tăđó

Hướng dẫn:

- Khaiăbáo:ăCácăbi năa,băki uăs ăthựcăđ ăl uăchi uădƠi,ăchi uăr ng

Bi năpăđ ăch aăchuăvi,ăbi năsăđ ăch aădi nătích

- Nh păd ăli uăchoăa,b

- Tínhăchuăviătheoăcôngăth căp:=2*(a+b);

- Tínhădi nătíchătheoăcôngăth căs:=ăa*b;

- Ghiăd ăli uălênămƠnăhìnhătheoăd ngăcóăquyăcáchă(s ăthực)

Chương trình:

Program hinh_chu_nhat;

Var a,b,p,s : real;

Begin

Write('nhap chieu dai a: '); readln(a);

Write('nhap chieu rong b: '); readln(b);

p:=2*(a+b); s:= a*b;

Writeln('chu vi cua hinh chu nhat la: ',p:10:2);

Writeln('Dien tich cua hinh chu nhat la: ',s:10:2); Readln

End

Ví dụ 2: Vi tăch ngătrìnhănh păvƠoăm tăs ănguyênăd ngăcóăbaăch ăs ăr iăinălênă

mƠnăhìnhăs ăđ oăng căc aăs ăđó

Hướng dẫn:

- Khaiăbáo:ăBi nănăđ ăch aăd ăli uămh păvƠo

- Nh pănănguyênăd ngăcóă3ăch ăs

Trang 23

Write('nhap so nguyen co 3 chu so : '); readln(n);

Write('so dao nguoc cua so ',n,' la: ');

writeln(n mod 10,n mod 100 div 10,n div 100);

- Khai báo: Bi nănăki uăs ănguyênăđ ăch aăd ăli uănh păvƠo

Bi năSăki uăs ănguyênăđ ăl uăk tăqu

- Nh păd ăli uăchoăn

Trang 24

24

3.ăa.ăVi tăch ngătrìnhănh păvƠoăs ănguyênăd ngăn,ăs ăthực aăr iăinălênămƠnăhìnhăgiáătr ăcĕnăb cănăc aăa.ă

b.ăVi tăch ngătrìnhănh păcácăs ăd ngăa,băr iăinălênămƠnăhìnhălogab

4.ăVi tăch ngătrìnhănh păvƠoă3ăc tăđi măv iăcácăh ăs ă1,2ăvƠă3.ăTínhăvƠăinălênămƠnăhìnhăđi mătrungăbìnhăc ng

5.ăVi tăch ngătrìnhănh păvƠoăs ănguyênăd ngăn,ăinălênămƠnăhìnhătổngăsau:

S= 12 + 22 +32 + +n2

(Bi tăcôngăth căs=n*(n+1)*(2*n+1)ădivă6)

6 Hƣyăvi tăbi uăth cătoánăh căd iăđơyătrongăPascal:

7.ăHƣyăchuy năcácăbi uăth cătrongăPascalăd iăđơyăsangăbi uăth cătoánăh căt ngă

Trang 25

25

Hình 3

10.ăL pătrìnhăvƠăđ aăraămƠnăhìnhăv năt căvăkhiăch măđ tăc aăm tăv tăr iătừăđ ăcaoăh,ă

bi tărằngă ,ătrongăđóăgă lƠăgiaăt căr iătựădoă vƠăg = 9,8m2.ăĐ ăcaoăhă(m)ă

đ cănh păvƠoătừăbánăphím

H NG D N GI I BÀI T P

1 - Khaiăbáoăăbi nărăki uăs ăthựcăđ ănh păbánăkính,ăcácăbi năp,ăsăki uăs ăthựcăđ ă

ch aăchu viăvƠădi nătích

- Nh păbánăkínhăr

- TínhăchuăviăvƠădi nătíchătheoăcôngăth c

- Thôngăbáoăk tăqu ă

2a - Khaiăbáoăăbi năchăki uăcharăđ ănh păkýătựăb tăkỳ

- Dùng công th căăexp(1/n*ln(a))ăđ ătínhăvƠăthôngăbáoăk tăqu

3b - Khaiăbáoăăcácăbi năa,băki uăs ăthựcăđ ănh păd ăli u.ă

Trang 26

26

4 - Khaiă báoăcácă bi năa,b,căki uăs ă thựcăđ ă nh pă3ăc tăđi m;ă bi nătbcă ki uăs ă

thựcăđ ăch aăk tăqu ă

Trang 27

Mục tiêu: H căxongăch ngănƠyăSinhăviênă

- Hi uăkháiăni măr ănhánh,ăbi tăđ căc uătrúcăchungăc aăc uătrúcăr ănhánh

- Bi tăs ădụngăcácăcơuăl nhăr ănhánh choăphùăh p

- Hi uăđ căýănghĩaăvƠătácădụngăc aăc uătrúcălặp

- Bi tădùngăcácăcơuăl nhălặpăvƠăcáchădùngăvòngălặpănƠoăchoăphùăh păv iăyêuăcầuăbƠiătoán

(TrongăđóăCL1, CL2 ăkýăhi uăchoăcơuăl nh1,ăcơuălênh2, )

4.1.3 Ý nghĩa: Ghép nhiều lệnh thành một câu lệnh

4.2.1 Cú pháp: Cóă2ăd ng:

(1) If <BTLG> then CL1 else CL2;

(2) If <BTLG> then CL;

TrongăđóăBTLGăkýăhi uăchoăbi uăth călogic

D ngă(1)ăcònăđ căg iălƠăd ngăđầyăđ ,ăD ngă(2)ăđ căg iălƠăd ngăthi u

Trang 28

28

4.2.4 Chú ý:

V iăl nhăIfăd ngă(1)ăsauăCL1ă(tr căelse)ăkhôngăcóăd uă";"ăvìăn uăcóăthìămáyă

s ăhi uălƠăl nhăifăăd ngă(2)ăsauăđóăgặpătừ khóaăelseămáyăs ăbáoălỗiăvìăkhôngăcóăl nhă

- Bi nălu nănghi mătheoăaăvƠăb

- Thôngăbáoăk tăqu ălênămƠnăhìnhăchoătừngătr ngăh p

If b<>0 then Writeln('phuong trinh vo nghiem') Else Writeln('pt vo dinh - nghiem la moi x '); Readln

T

T

Trang 29

- Bi nălu nătheoăxăđ ătínhăf

- Thôngăbáoăk tăqu ălênămƠnăhìnhăs ăthựcăfătheoăd ngăcóăquyăcách

(1)ăTùyăthu căvƠoăgiáătr ăc aăbi uăth căbt thu căvƠoăt păhằngănƠoămƠămáyătínhă

s ăthựcăhi năcơuăl nhăt ngă ng.ăN uăkhôngăs ăthựcăhi năCLn+1ă;

x

f(x) = x>0

0 x

Trang 30

30

(2)ăT ngătựăd ngă(1),ăchỉăkhácă ăchổăn uăgiáătr ăc aăbi uăth căkhôngăthu că

t păhằngănƠoăc ăthìămáyăs ăkhôngăthựcăhi năcơuăl nhănƠoăc ătrongăthơnăl nhăCASE vƠăs ăthoát

4.3.4 Chú ý:

(1).ăGiáătr ăc aăbtăph iăcóăcùngăki uăv iăcácăphầnăt ăc aăt păhằngăvƠăph iălƠă

ki uăvôăh ngăđ măđ c

(2).ăT păhằngăcóăth ălƠăm tăgiáătr ,ăm tăt păh păcácăgiáătr ,ăvƠăth măchíălƠăm tă

ki uăd ăli uă(ki uăđo năcon,ăli tăkê)

(3).ăL nhăCASEăcóăth ăđ căthayăth ăb iănhi uăl nhăăIFăl ngănhauăvƠăng că

l iăl nhăIFăcũngăcóăth ăđ căthayăth ăbằngăl nhăCASEăăvíădụăl nhăIFăd ngă(1)ăcóăth ă

Ví dụ 1: Vi tăch ngătrìnhănh păvƠoăm tăs ănăb tăkỳătrongăđo nă[0 255] và

thông báo lên màn hình:

- Câu thông báo: ' Day la ky tu dieu khien' (n uăn < 32);

- Câu thông báo: ' la ky tu thongădung'.ă(n uă127  n  32);

0 31 : Writeln(' Day la ky tu dieu khien');

32 127 : Writeln(chr(n),'la ky tu thong dung'); 128 255 : Writeln(chr(n),' la ky tu dac biet');

END;

Readln

Trang 31

*ăt=2ăthìănh păthêmănĕmăn,ăn uănălƠănĕmănhu năthìăsn:=29,ăng căl i sn:=28;

- Thôngăbáoăk tăqu ăsnălênămƠnăhình

Trang 32

32

(1)ăăCơuăl nhăCLăs ăđ călặpăđúngăbằngăs ălầnămƠăbdkăđ căgánătĕngădầnălầnă

l tătừăgiáătr ăc aăăbt1ăđ năgiáătr ăc aăbt2

(2)ăăCơu_l nhăs ăđ călặpăđúngă bằngăs ă lầnă mƠă bdkăđ căgánăgi mădầnă lầnă

l tătừăgiáătr ăc aăăbt2 đ năgiáătr ăc aăbt1

(2).ăTrongăthơnăcơuăl nhăforăkhôngăđ călƠmăthayăđổiăgiáătr ăc aăbdk vìănh ă

th ăs ăkhôngăki măsoátăđ c bi năđi uăkhi năvƠăcóăth ăd năđ nătrìnhătr ngălặpăvôă

h n Khiăđóătaăs ădụngătổăh păphímăCtrlă+ăBreakăđ ădừngăch ngătrình

(3).ăCóăth ăs ădụngăl nhăBREAKăđ ăthoátăkh iăl nhăFORăcũngănh ăthoátăkh iăcácăl nhăWHILE,ăREPEAT

4.4.5 Các ví dụ:

Ví dụ 1: Vi tăch ngătrìnhăhi năth ălênămƠnăhìnhămƣăASCIIăvƠăcácăkýătựăt ngă

ng,ăc ă20ăkýătựătrênăm tătrangămƠnăhình

Hướng dẫn:

- Khaiăbáoăbi năđi uăkhi năăl nhăFORălƠăăiăăăki uăbyte;

- Dùngăl nhăFORăăd ngă(1)ăv iăbi năđi uăkhi năiăch yătừăă0ăđ nă255,ăăv iămỗiăgiáătr ăc aăiătaăghiălênămƠnăhìnhăkýătựăcóămƣăASCIIăt ngă ng;ăSauăđóăki mătraăxemă

n uăi+1ăchiaăh tăchoă20ăthìădùngăl nhăreadlnăđ ăt mădừngămƠnăhình

Trang 33

Writeln('ky tu tuong ung voi ma',i,' la:', chr(i));

If i+1 mod 20 = 0 then readln;

End;

End

Ví dụ 2: Vi tă ch ngă trìnhă tínhă tổng: S = 13

+23+33+ +n3 (nă nh pă từă bƠnăphím)

Hướng dẫn:

- Khaiăbáo:ăBi nănăki uăs ănguyênăintegerăđ ăch aăd ăli uănh păvƠo

Bi năSăki uălongintăđ ăl uăk tăqua

- Nh păn

- Kh iăgánăS:=0;

- Dùngăl nhăFORăăd ngă(1)ăv iăbi năđi uăkhi năiăch yătừă1ăđ năn,ăăv iămỗiăgiáă

tr ăc aăiătaăthựcăhi năl nhăc ngăd năS:=ăS+ăsqr(i)*i;

- Ghiăk tăqu ăSălênămƠnăhình

For i:=1 to n do s:=s+sqr(i)*i;

Write('Tong', n, ' so tu nhien dau tien la: ',s); Readln

4.5.2 Ý nghĩa: Thựcăhi nălầnăl tăcácăcơuăl nhătừăCL1ăđ năCLnăsauăđóăki mătraăgiáă

tr ăc aăbi uăth călogic,ăn uăsaiăthìălặpăl i,ăn uăđúngăthìăthoát.ă

4.5.3 Sơ đồ hoạt động:

Trang 34

34

4.5.4 Chú ý:

(1).ăCácăcơuăl nhănằmăgi aărepeat ăuntilăkhôngăcầnăph iăs ădụngăcặpătừăkhóaăbegin end;

(2).ăTrongăthơnăc aăl nhărepeatăth ngăph iăcóăcơuă l nhă lƠmăthayăđổiăgiáătr ă

c aăbi uăth călogicăn uăkhôngăd ăd năđ nătìnhătr ngălặpăvôăh n

(3).ăKhiăthựcăhi n ch ngătrìnhăn uăb ălặpăvôăh năthìănh nătổăh BREAKăđ ădừngăch ngătrình

păphímăCTRL-(4).ăL nhărepeatăth ngăđ căs ădụngăkhiăph iăthựcăhi năítănh tălƠăm tălầnăcácăcơuăl nhătừăCL1ăđ năCLnăvƠăs ălầnălặpăkhôngăxácăđ nhăđ cătr c.ă(Trongătr ngă

h păbi tătr căs ălầnălặpătaănênădùngăl nhăfor)

4.5.5 Các ví dụ:

Ví dụ 1: S ădụngăl nhărepeatăđ ăl căd ăli uăvƠoătheoăyêuăcầu,ăchẳngăh năcầnă

nh pănănguyênăd ngătaăvi tănh ăsau:

Trang 35

Ví dụ 3: Vi tăch ngătrìnhă nh pă vƠoă m tăs ă nguyênăd ngă b tăkỳăr iă ină lênă

mƠnăhìnhăs ăch ăs ăc aăs ăđó

Trang 36

36

4.6.4 Chú ý:

(1).ăCũngăgi ngăl nhăRepeat,ătrongăthơnăc aăl nhăwhileăph iăcóăcơuăl nhălƠmăthayăđổiăgiáătr ăc aăbi uăth călogicăn uăkhôngăd ăd năđ nătìnhătr ngălặpăvôăh n (2).ă Khácă v iă l nhă repeată l nhă whileă ki mă traă đi uă ki nă c aă bi uă th că logică

tr c,ănênăcóăth ăcơuăl nhătrongăthơnăc aănóăkhôngăđ căthựcăhi năm tălầnănƠoăc ăkhiămƠăngayătừăđầuăbi uăth călogicănh năgiáătr ăsai.ă

4.6.5 Các ví dụ:

Ví dụ 1: S ădụngăl nhăwhile,ăvi tăch ngătrìnhănh păvƠoăm tăs ănguyênăd ngă

b tăkỳăr iăinălênămƠnăhìnhăs ăch ăs ăc aăs ăđó

Ví dụ 2: Vi tă ch ngă trìnhă nh pă vƠoă haiă s ă nguyênă d ngă r iă tìmă că s ă

chungăl nănh tăc aăchúng

Trang 37

BÀI T P CH NG 4

4.1 L nh If vƠ Case:

1 Vi tăch ngătrìnhănh păvƠoă3ăs ănguyên,ăinăraămƠnăhìnhăs ăl nănh t

2 Vi tăch ngătrìnhăgi iăph ngătrìnhăb căhai

3 Vi tăch ngătrìnhănh pă3ăs ,ăchoăbi tăchúngăcóăth ălƠăđ ădƠiă3ăc nhăc aăm tătamăgiác hay không?

4 Vi tăch ngătrìnhănh păvƠoăs ăKWăđi nătiêuăthụăc aăm tăh ăgiaăđình,ăinăraămƠnăhìnhăs ăti năt ngă ng,ăbi tărằngăgiáăthƠnhăđ cătínhănh ăsau:

- TừăKWăth ăă1ăđ năth ă100ăgiáă0.5ănghìnăđ ng

- TừăKWăth ăă101ăđ năth ă200ăgiáă0.8ănghìnăđ ng

- TừăKWăth ăă201ătr ălênăgiáă1.5ănghìnăđ ng

5 Đo năch ng trìnhăsauăđơyăđúngăcúăphápăhayăkhông?ăN uăđúngăchoăbi tăýănghĩaă

Trang 38

(S ăhoƠnăh oălƠăs ăbằngătổngăt tăc ăcácă căc aănóă(trừăs ăđó)ăchẳngăh nă6,ă28, )

5 Vi tăch ngătrìnhăki mătraăxemăm tăs ănguyênănănƠoăđóăcóăph iălƠăs ănguyênăt ăhay không?

6 Vi tăch ngătrìnhătìmăt tăc ăcácăs ănguyênăt ănằmătrongăđo nă[1,n]ă(nănh pătừăbƠnăphím)

7 Tìmăs ăc aădƣyăFIBONACCIăl nănh tăth aămƣnăbéăh nă2000.ă(Dãy Fibonacci là dãy a1=1, a2=1, an=an-1+an-2 (n>=3))

8 M tăng iăcóăs ăti nătăđemăg iăngơnăhƠngăv iălƣiăsu tăk/thángă(bi tărằngălƣiăc aăthángătr căđ cănh păvƠoăti năg căđ ătínhălƣiăchoăthángăti pătheo).ăH iăđ ăcóăđ că

s ăti nămaxă(max>t)ăthìăng iăđóăph iăg iăti tăki măbaoănhiêuătháng?ă(t,ăk,ămaxăđ uă

nh pătừăbƠnăphím)

9 Vi tăch ngătrìnhătìmăcácăs ăa, b, căth aămƣn:

10 Vi tăch ngătrìnhăphơnătíchăm tăs ănguyênăthƠnhătíchăc aăcácăs ănguyênăt

11 Vi tăch ngătrìnhăgi i bài toán:

Trang 39

15.ăM tăng iăg iăti tăki măkhôngăkìăh năv iăs ăti năAăđ ngăv iălƣiăsu tă0,3%ămỗiătháng H iăsauăbaoănhiêuătháng,ăng iăđóărútăh tăs ăti năthìăs ănh năđ căs ăti năítă

nh tă lƠăBăđ ng?ăBi tărằngă v iă vi căg iăti tăki măkhôngăkìăh năthìălƣiăkhôngăđ că

c ngăvƠoăv n

H NG D N GI I BÀI T P

1 - Nh păvƠoă3ăs ăa,b,c

- Kh iăgánămax:=a;

- Soăsánhămaxăv iăb,căn uămaxăbéăh năthìăgánăl iămax

2 - Nh păcácăh ăs ăa,b,c

- Tính dt:=b*b - 4*a*c;

- S ădụngăl nhăIfăăbi nălu nănghi mătheoădtăvƠăthôngăbáoăk tăqu

3 - Nh p cácăh ăs ăa,b,c

- S ădụngă l nhă Ifă bi nă lu n:ăN uăđ ngăth iăx yăraăa+b>c,ă b+c>a,ăc+a>băthìăthôngăbáoăa,b,căđúngălƠăđ ădƠiă3ăc nhăc aăm tătamăgiácănƠoăđó.ăNg căl iăthìăkhôngă

ph i

4 - Nh păvƠoăs ăKWăđi nătiêuăthụ

- Dùngăl nhăIfăhoặcăcaseăđ ăbi nălu năvƠătínhăti nătheoăgíaăthƠnh

- Thôngăbáoăk tăqu

5 - Đo năch ngătrìnhătrênăhoƠnătoƠnăđúngăcúăpháp;

- Ýă nghĩaă c aă nóă lƠă choă phépă nh pă vƠoă haiă s ă nguyênă a,b.ă N uă aă <bă thìă s ăthôngăbáoălênămƠnăhìnhăb tădẳngăth căđó,ăng căl iăthôngăbáoăb tăđẳngăth căbă<=ăa

8 - Nh păvƠoăm tăs ănguyênăd ng

- Dùngăl nhăRepeatăhoặcăWhileăđ ălặpăl iăcôngăvi căsauăđơyăchoăđ năkhiăn=0ăthìădừng:

+ăGhiălênămƠnăhìnhăch ăs ăcu iăcùngăc aănă(nămodă10)ăbằngăl nhăwrite; +ăLo iăb ăch ăs ăcu iăcùngăbằngăcáchăgánăl iăn:=ănădivă10

9 - Nh păs ăm,ănănguyênăd ngă(m<n);

Trang 40

40

- Dùngăl nhăforălầnăl tăduy tăt tăc ăcácăs ătừămăđ năn,ăn uăđúngălƠăs ăhoƠnă

h oăthìăthôngăbáo,ăn uăkhôngăthìăb ăqua

10 - Nh păs ăn

- Kh iăgánăi:=2;

- S ădụngăl nhăWhileălặpăl i:ăChừngănƠoăi<=round(sqrt(n))ăvƠăn mod i <>0 thì tĕngăiălênă1;ăSauăđóăki mătraăn uăđ ngăth iăi<>1ăvƠăiă>ăround(sqrt(n))iănăăthìănălƠăs ănguyênăt ;ăNg căl iănăkhôngăph iălƠăs ănguyênăt

11 - Nh păs ăănănguyênăd ng;

- Dùngăl nhăforălầnăl tăduy tăt tăc ăcácăs ătừă1ăđ năn,ăn uăđúngălƠăs nguyên

t ăthìăthôngăbáoăn uăkhôngăthìăb ăqua

- Thôngăbáoăk tăqu ălƠăst

14 - G iăs ăcầnătìmăcóăcácăch ăs ălƠăa,b,c

- S ădụngă3ăl nhăforăl ngănhauăđ ăth ăh tăt tăc ăcácăkh ănĕngăc aăa,b,cătừă1ă

đ nă9,ăn uăth a mƣnă100*a+10*b+c=11*(a+b+c)ăthìăthôngăbáoăk tăqu

Ngày đăng: 16/01/2021, 11:10

HÌNH ẢNH LIÊN QUAN

3.ăạăVi tăch ngătrìnhănh păvƠoăs ănguyênăd ngăn,ăs ăthực aăr iăinălênămƠnăhìnhă giáătr ăcĕnăb cănăc aăạă - Ngôn ngữ Lập trình Pascal
3. ăạăVi tăch ngătrìnhănh păvƠoăs ănguyênăd ngăn,ăs ăthực aăr iăinălênămƠnăhìnhă giáătr ăcĕnăb cănăc aăạă (Trang 24)
Hình 3 - Ngôn ngữ Lập trình Pascal
Hình 3 (Trang 25)
-Thôngăbáoăk tăqu ălênămƠnăhìnhăchoătừngătr ngăh p. - Ngôn ngữ Lập trình Pascal
h ôngăbáoăk tăqu ălênămƠnăhìnhăchoătừngătr ngăh p (Trang 28)
Ví dụ 1: Vi tăch ngătrìnhăhi năth ălênămƠnăhìnhămƣăASCIIăvƠăcácăkýătựăt ngă ng,ăc ă20ăkýătựătrênăm tătrangămƠnăhình. - Ngôn ngữ Lập trình Pascal
d ụ 1: Vi tăch ngătrìnhăhi năth ălênămƠnăhìnhămƣăASCIIăvƠăcácăkýătựăt ngă ng,ăc ă20ăkýătựătrênăm tătrangămƠnăhình (Trang 32)
-Thôngăbáoăk tăqu ălênămàn hình. - Ngôn ngữ Lập trình Pascal
h ôngăbáoăk tăqu ălênămàn hình (Trang 49)
Các hằng liên quan đến chế độ phân giải của màn hình. - Ngôn ngữ Lập trình Pascal
c hằng liên quan đến chế độ phân giải của màn hình (Trang 75)
Tuyănhiênăkhiă khaiăbáoăki uăb năghiă choăcácăthamăs ăhìnhăth cătrongă phầnă khaiăbáoăcácăch ngătrìnhăconăthìăki uăđóăph iăđ căđ nhănghĩaătr c,ăvíădụ: - Ngôn ngữ Lập trình Pascal
uy ănhiênăkhiă khaiăbáoăki uăb năghiă choăcácăthamăs ăhìnhăth cătrongă phầnă khaiăbáoăcácăch ngătrìnhăconăthìăki uăđóăph iăđ căđ nhănghĩaătr c,ăvíădụ: (Trang 84)
Ví dụ:ăăModeămƠnăhìnhăđ căđặtătrongăvùngănh ăcóăđ aăchỉăSegmentăvƠăOffsetă - Ngôn ngữ Lập trình Pascal
d ụ:ăăModeămƠnăhìnhăđ căđặtătrongăvùngănh ăcóăđ aăchỉăSegmentăvƠăOffsetă (Trang 117)
w