100 bài t p Turbo Pascal
*** **
(Tài li u b i d ng h c sinh gi i môn tin h c ưỡ
dành cho h c sinh THCS)
Lê Nho Duy t – Phòng GD&ĐT Qu S n ế ơ Trang 1
100 bài t p Turbo Pascal
GI I THI U TÓM T T T P TÀI LI U
1. S c n thi t: ế
Các tr ng THCS đang có xu h ng d y môn t ch n tin h c thay cho ch đườ ướ
t ch n khi mà c s v t ch t ph c v cho vi c d y h c môn h c này đc trang b ơ ượ
ngày càng t t h n. R t nhi u h c sinh, ph huynh h c sinh, lãnh đo các tr ng ơ ư
mu n b n thân, con mình, h c sinh mình tham gia các k thi h c sinh gi i môn tin h c
(K thi tin h c tr , K thi h c sinh gi i l p 9...) b i tính m i m , h p d n, thi t th c ế
c a b môn. L n đu tiên b môn tin h c đc đa vào d y h c t i các tr ng ượ ư ườ
THCS nên tài li u b i d ng cho h c sinh gi i ưỡ dành cho h c sinh THCS h u nh ư
ch a có. Đáp ng nhu c u b i d ng t i các tr ng, t p tài li u b i d ng h c sinhư ưỡ ườ ư
gi i môn tin h c c p THCS v i tên g i 100 bài t p Turbo Pascal đc b ph nượ
chuyên môn Phòng GD&ĐT Qu S n biên so n.ế ơ
2. N i dung:
T p tài li u đc biên so n theo đnh h ng 10 x 10. N i dung b i d ng ượ ướ ưỡ
đc chia làm 10 ch ng. M i ch ng g m tóm t t lý thuy t và 10 bài t p xoayượ ươ ươ ế
quanh n i dung c a ch ng. M i bài t p đc trình bày theo c u trúc: ươ ượ
a. Đ bài.
b. H ng d n, thu t toán.ướ
c. Mã ch ng trình.ươ
d. Nh n xét: Nh n m nh n i dung m i, quan tr ng c n n m sau khi th c hi n
bài t p, gi i quy t bài toán theo thu t toán khác, đi m đc và ch a đc c a thu t ế ượ ư ượ
toán ...
N i dung các bài t p các ch ng đã đc l a ch n theo h ng k th a, tăng ươ ượ ướ ế
d n đ khó. Nhi u bài toán c n gi i quy t trong th c t đc đa vào các bài t p ế ế ượ ư
nh m tăng h ng thú h c t p .... ướ
H u h t các bài t p có đ khó v a ph i, phù h p v i n i dung b i d ng ế ưỡ
c p tr ng. N i dung liên quan v i môn toán và các môn khác t l p 8 tr xu ng. N i ườ
dung b i d ng đc chia thành 10 ch ng nh sau: ưỡ ượ ươ ư
L p 8:
I. Làm quen v i ch ng trình Pascal – Khai báo, s d ng bi n – Các th t c ươ ế
vào ra.
II. C u trúc l a ch n: if … then … else
Case ... of ...
III. C u trúc l p v i s l n l p đã bi t: For … to … do ế
IV. C u trúc l p v i s l n l p ch a bi t. ư ế
V. D li u ki u m ng (m t chi u).
VI. Ch ng trình con.ươ
Lê Nho Duy t – Phòng GD&ĐT Qu S n ế ơ Trang 2
100 bài t p Turbo Pascal
VII. Chuyên đ: Tính chia h t- S nguyên t . ế
VIII. Chuyên đ dãy con.
IX. Chuyên đ ch s - h c s . ơ
X. Chuyên đ đa th c.
3. Đ ngh :
Ch c ch n t p tài li u c n hi u ch nh, b sung đ có th đa vào s d ng. R t ư
mong H i đng th m đnh cho y ki n c th v : ế
- Nh ng hi u ch nh v c u trúc c a t p tài li u.
- Nh ng n i dung c n b sung thêm, nh ng n i dung c n gi m b t cho phù h p v i
th c t b i d ng t i các đn v tr ng. ế ưỡ ơ ườ
- Đ xu t các bài t p hay h n đ thay th cho các bài t p đã có t p tài li u. Các bài ơ ế
t p mà t p tài li u còn thi u. ế
Lê Nho Duy t – Phòng GD&ĐT Qu S n ế ơ Trang 3
100 bài t p Turbo Pascal
CH NG IƯƠ
CÁC KI U D LI U C B N Ơ
KHAI BÁO H NG, BI N, KI U, BI U TH C VÀ CÂU L NH
A. LÝ THUY T:
I. CÁC KI U D LI U C B N Ơ
1. Ki u logic
- T khóa: BOOLEAN
- mi n giá tr : (TRUE, FALSE).
- Các phép toán: phép so sánh (=, <, >) và các phép toán logic: AND, OR, XOR,
NOT.
Trong Pascal, khi so sánh các giá tr boolean ta tuân theo qui t c: FALSE <
TRUE.
Gi s A và B là hai giá tr ki u Boolean. K t qu c a các phép toán đc th ế ượ
hi n qua b ng d i đây: ướ
A B A AND B A OR B A XOR B NOT A
TRUE TRUE TRUE TRUE FALSE FALSE
TRUE FALSE FALSE TRUE TRUE FALSE
FALSE TRUE FALSE TRUE TRUE TRUE
FALSE FALSE FALSE FALSE FALSE TRUE
2. Ki u s nguyên
2.1. Các ki u s nguyên
Tên ki uPh m viDung l ngượ
Shortint -128 127 1 byte
Byte 0 255 1 byte
Integer -32768 32767 2 byte
Word 0 65535 2 byte
Lê Nho Duy t – Phòng GD&ĐT Qu S n ế ơ Trang 4
100 bài t p Turbo Pascal
LongInt -2147483648 2147483647 4 byte
2.2. Các phép toán trên ki u s nguyên
2.2.1. Các phép toán s h c:
+, -, *, / (phép chia cho ra k t qu là s th c).ế
Phép chia l y ph n nguyên: DIV (Ví d : 34 DIV 5 = 6).
Phép chia l y s d : ư MOD (Ví d : 34 MOD 5 = 4).
3. Ki u s th c
3.1. Các ki u s th c:
Tên ki uPh m viDung l ngượ
Single 1.510-45 3.410+38 4 byte
Real 2.910-39 1.710+38 6 byte
Double 5.010-324 1.710+308 8 byte
Extended 3.410-4932 1.110+4932 10 byte
Chú ý: Các ki u s th c Single, Double và Extended yêu c u ph i s d ng chung v i
b đng x lý s ho c ph i biên dich ch ng trình v i ch th ươ {$N+} đ liên k t b ế
gi l p s .
3.2. Các phép toán trên ki u s th c: +, -, *, /
Chú ý: Trên ki u s th c không t n t i các phép toán DIV và MOD.
3.3. Các hàm s h c s d ng cho ki u s nguyên và s th c:
SQR(x): Tr v x 2
SQRT(x): Tr v căn b c hai c a x (x 0)
ABS(x): Tr v |x|
SIN(x): Tr v sin(x) theo radian
COS(x): Tr v cos(x) theo radian
ARCTAN(x): Tr v arctang(x) theo radian
TRUNC(x): Tr v s nguyên g n v i x nh t nh ng bé h n x. ư ơ
INT(x): Tr v ph n nguyên c a x
FRAC(x): Tr v ph n th p phân c a x
ROUND(x): Làm tròn s nguyên x
PRED(n): Tr v giá tr đng tr c n ướ
SUCC(n): Tr v giá tr đng sau n
ODD(n): Cho giá tr TRUE n u n là s l . ế
Lê Nho Duy t – Phòng GD&ĐT Qu S n ế ơ Trang 5