Trang 1
Giaùo trình
Chủ biên: Võ Thanh Ân
Hiệu đính và bổ sung: Vương Đức Bình
Bến Tre, 5-2008
Trang 2
Lời ngỏ cho lần hiệu đính
Tài liệu y đƣợc viết lần đầu bởi giảng viên Thanh Ân, theo yêu cầu của Tbộ
môn CNTT, vào tháng 3 năm 2004. Tài liệu đƣợc viết trình y khá mạch lạc, gọn
nh, d hiểu và đã đƣợc dùng để dạy cho lớp K2 CNTT.
Cho đến nay do nhận thấy cần một số điều chỉnh bổ sung nhằm thích hợp với công
tác giảng dạy hơn nhƣ:
1. Turbo Pascal, nhƣ trìnhy của giảng viên Võ Thanh Ân, không còn chạy tốt
trên nền Windows XP nữa. Thay vào đó Borland Pascal chạy ổn định hơn.
2. Dù Pascal gần đây là ngôn ngữ bị phê phán nhiều trong giới lập trình viên vì
những yếu kém của nó. Chủ yếu do nó không cho phép quá tải các cấu trúc d
liệu và các hàm. Dù nó có kém so với Borland C++ trong vấn đề lập trình
hƣớng đối tƣợng, song do tính khúc chiết - mạch lạc và trong sáng trong cú
pháp của ngôn ngữ, nó vẫn là ngôn ngữ rất tốt để dạy cho ngƣời mới bắt đầu
học lập trình. Về mặt sƣ phạm thì có l khó có ngôn ngữ nào tốt hơn.
3. Cần nói tới Free Pascal, là một phiên bản miễn phí hoàn toàn, giữ lại đƣợc hầu
hết cú pháp, từ khóa, thao tác của Borland Pascal và lại chạy ổn định trên
Windows XP.
4. Kinh nghiệm cho thấy sinh viên của Khoa mấym qua, do công tác tuyển
sinh, có h thấp yêu cầu đầu vào. Do đó buộc phải xem xét lại các giáo trình đã
viết để giúp cho ngƣời học - ở xuất phát điểm thấp hơn vẫn có thể đạt chất
lƣợng đầu ra theo yêu cầu.
Với những do đó, do khi xem xét lại giáo trình y thì giảng viên Thanh
Ân đã không còn làm việc tại Tổ bộ môn CNTT, tôi quyết định hiệu đính lại tài
liệu. Trên tinh thần tôn trọng tác giả ban đầu của tài liệu này, chỗ nào thêm
vào hoặc hiệu đính thì tôi sẽ dùng màu chữ xanh dƣơng đậm với font size nhỏ hơn đ
phân biệt.
Tổ bộ môn CNTT cảm ơn giảng viên Thanh Ân đã cho phép tiếp tục dùng
giáo trình y cũng mong rằng giáo trình cùng các hiệu đính, phụ lục mới sẽ
giúp cho sinh viên học tập hiệu quả.
Vương Đức Bình
(Tháng 01/2008)
Trang 3
Mục lục ( Phần 1)
Chƣơng I: GIỚI THIỆU NGÔN NGỮ PASCAL VÀ BORLAND PASCAL 7.0 .......... 5
I. GIỚI THIỆU NGÔN NGỮ PASCAL. ............................................................... 5
1. Ngôn Ngữ PASCAL ........................................................................................ 5
2. TURBO PASCAL ........................................................................................... 5
II. SỬ DỤNG PASCAL 7.0..................................................................................... 6
1. Khởi Động Turbo Pascal ................................................................................. 6
2. Các Thao Tác Thƣờng Sử Dụng Trên Turbo Pascal ...................................... 7
III. CÁC THÀNH PHẦN CƠ BẢN CỦA NGÔN NGỮ PASCAL ......................... 8
1. Bộ Chữ Viết – Từ Khoá – Tên ........................................................................ 8
2. Hằng Kiểu – Biến ......................................................................................... 9
3. Biểu Thức – Dấu Chấm Phẩy – Lời Giải Thích ............................................ 10
4. Cấu Trúc Của Một Chƣơng Trình Pascal ...................................................... 11
Chƣơng II: CÁC KIỂU VÔ HƢỚNG CHUẨN VÀ CÁC CÂU LỆNH ĐƠN ............. 12
I. CÁC KIỂU VÔ HƢỚNG CHUẨN .................................................................. 12
1. Các Kiểu Vô Hƣớng Chuẩn (Standard scalar types) ..................................... 12
2. Một Số Phép Toán Trên Các Kiểu ................................................................ 12
II. CÂU LỆNH ....................................................................................................... 14
1. Khái Niệm Về Một Câu Lệnh ....................................................................... 14
2. Một Số Lệnh Đơn .......................................................................................... 15
Chƣơng III: CÁC LỆNH CÓ CẤU TRÖC ................................................................... 18
I. LỆNH CẤU TRÖC RẼ NHÁNH ..................................................................... 18
1. Dạng Không Đầy Đủ ..................................................................................... 18
2. Dạng Đầy Đủ ................................................................................................ 18
II. LỆNH CẤU TRÖC LỰA CHỌN ..................................................................... 19
1. Dạng Không Đầy Đủ ..................................................................................... 19
2. Dạng Đầy Đủ ................................................................................................. 19
III. CÁC LỆNH VÕNG LẶP .................................................................................. 20
1. Lệnh Lặp Với Số Lần Xác Định .................................................................... 20
2. Lệnh Lặp Với Số Lần Lặp Không Xác Định ................................................ 23
Chƣơng IV: CHƢƠNG TRÌNH CON ........................................................................... 25
I. KHÁI NIỆM VỀ CHƢƠNG TRÌNH CON ...................................................... 25
II. HÀM (FUNCTION).......................................................................................... 26
III. THỦ TỤC (PROCEDURE) .............................................................................. 27
IV. LỜI GỌI CHƢƠNG TNH CON VÀ VẤN ĐỀ TRUYỀN THAM SỐ. ....... 28
V. HOẠT ĐỘNG CỦA CHƢƠNG TRÌNH CON KHI ĐƢỢC GỌI VÀ SỰ BỐ
TRÍ BIẾN. ................................................................................................................. 30
VI. VẤN ĐỀ TRUYỀN THAM SỐ KHI GỌI CHƢƠNG TRÌNH CON. ............. 30
VII. TÍNH ĐỆ QUI CỦA CHƢƠNG TRÌNH CON ................................................ 33
Chƣơng 5: UNIT ............................................................................................................ 37
I. KHÁI NIỆM VỀ UNIT ..................................................................................... 37
1. Khái Niệm Về Unit ........................................................................................ 37
2. Các Unit Chuẩn ............................................................................................. 37
II. THIẾT LẬP UNIT ............................................................................................ 38
1. Các Bƣớc Tạo Một Unit ................................................................................ 38
Trang 4
2. Ví dụ ứng dụng .............................................................................................. 39
III. TẬP TIN TURBO.TPL ..................................................................................... 40
Trang 5
Chƣơng I: GIỚI THIỆU NGÔN NGỮ PASCAL
BORLAND PASCAL 7.0
I. GIỚI THIỆU NGÔN NGỮ PASCAL.
1. Ngôn Ngữ PASCAL
Vào đầu những năm 1970 do nhu cầu học tập của sinh viên, giáo Niklaus
Writh - Trƣờng Đại Học KThuật Zurich - Thụy đã sáng tác một ngôn ngữ lập
trình cấp cao cho công tác giảng dạy sinh viên. Ngôn ngữ đƣợc đặt tên PASCAL để
tƣởng nhớ đến nhà toán học ngƣời Pháp Blaise Pascal.
Pascal là một ngôn ngữ lập trình có cấu trúc thể hiện trên 3 phƣơng diện.
- Về mặt dữ liệu: Ngoài các kiểu dữ liệu đơn giản còn các kiểu dữ liệu cấu
trúc. Ta có thể xây dựng các kiểu dữ liệu phức tạp từ các kiểu dữ liệu đã có.
- Về mặt câu lệnh: Từ các câu lệnh đơn giản lệnh cấu trúc ta thể xây
dựng các câu lệnh hợp thành.
- Về mặt chƣơng trình: Một chƣơng trình có thể chia làm nhiều chƣơng trình con.
2. TURBO PASCAL
Khi mới ra đời, Standart Pascal một ngôn ngữ đơn giản, dùng để giảng dạy
học tập, dần dần các ƣu điểm của đƣợc phát huy trthành một ngôn ngữ
mạnh. Từ Pascal chuẩn ban đầu, đã đƣợc nhiều công ty phần mềm cải tiến với nhiều
thêm bớt khác nhau.
TURBO PASCAL sản phẩm của hãng Borland đƣợc dùng rất phbiến trên
thế giới những ƣu điểm của nhƣ: tốc đnhanh, các cải tiến so với Pascal chuẩn
phù hợp với yêu cầu ngƣời dùng.
TURBO PASCAL 4.0 trở đi có cải tiến rất quan trọng là đƣa khái niệm Unit để
thể dịch sẵn các Module trên đĩa, làm cho việc lập trình trở nên ngắn gọn, dễ dàng,
chƣơng trình viết dễ hiểu hơn.
Từ phiên bản 5.5 (ra đời m 1989) trở đi, Turbo Pascal một kiểu dữ liệu
hoàn toàn mới kiểu Object cho phép đƣa các lệnh xen kẽ với dữ liệu. Ngoài ra
còn thƣ viện đồ hoạ rất phong phú với nhiều tính năng mạnh, ngôn ngữ lập trình
cấp cao Delphi cũng sử dụng cú pháp tƣơng tự nhƣ Turbo Pascal.
Turbo Pascal 7.0 phiên bản cuối cùng của Borland. Sau phiên bản này hãng
Borland chuyển sang Pascal For Windows trong một thời gian ngắn rồi sản xuất DELPHI.
Turbo Pascal 7.0 hỗ trợ mạnh mẽ lập trình hƣớng đối tƣợng nhƣng nhƣợc điểm bị lỗi
“Devide by zero” trên tất cả các máy xung nhịp lớn hơn 300 MHz. Giải quyết vấn đề này
có hai phƣơng án:
a. Cập nhật file TURBO.TPL trong thƣ mục \BP\BIN.
b. Sử dụng Free Pascal.1
Ngoài ra cũng nên lƣu ý là Turbo Pascal chạy ở chế độ thực (real mode) nên khi chạy trên nền
Windows XP hay khởi động lại y. Nên chạy Borland Pascal. Khi đó Windows sẽ tạo
một môi trƣờng DOS giả lập và chạy ở chế độ đa nhiệm tiện lợi hơn.
1 Gói phần mềm này có thể download miễn phí từ Internet (từ khóa: Free Pascal) hoặc hỏi chép từ Tổ bộ môn
CNTT.