Giáo trình Tin học đại cương - Phần 2 - Chương 1: Cấu trúc của chương trình Pascal

PASCAL là ngôn ngữ lập trình bậc cao của tác giả Niklaus Wirth (giáo sưngười Thuỵ

sĩ), ñược công bố vào ñầu những năm 1970. Tên PASCAL là ñể kỉ niệm nhà Toán học người

Pháp B. Pascal.

PASCAL là ngôn ngữ lập trình có tính cấu trúc và tính hệ thống: các kiểu dữliệu ña

dạng, các cấu trúc ñiều khiển chặt chẽ, các cấu trúc khối trong chương trình rõ ràng.

PASCAL là ngôn ngữ lập trình có ñịnh kiểu rõ ràng: các ñại lượng (biến và hằng) ñã

ñược khai báo ñể sử dụng với kiểu dữ liệu này thì không thể ñem dùng lẫn với kiểu khác.

pdf5 trang | Chuyên mục: Pascal | Chia sẻ: dkS00TYs | Lượt xem: 2104 | Lượt tải: 3download
Tóm tắt nội dung Giáo trình Tin học đại cương - Phần 2 - Chương 1: Cấu trúc của chương trình Pascal, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
 khác mỗi loại máy có một ngôn ngữ máy riêng. 
+ Ngôn ngữ tập hợp: Khắc phục một số nhược ñiểm trên người ta nghĩ cách thay thế một 
số mã nhị phân bằng các chữ cái và cho ra ñời ngôn ngữ tập hợp (còn gọi là ngôn ngữ kí 
hiệu). Ưu ñiểm là việc lập trình ñã dễ dàng hơn, tuy nhiên cần phải có chương trình dịch từ 
ngôn ngữ tập hợp ra ngôn ngữ máy, và vẫn còn phụ thuộc vào từ máy. 
+ Ngôn ngữ bậc cao: Chương trình ñược viết gần với ngôn ngữ tự nhiên của con người, 
do ñó dễ dàng cho người lập trình, tuy nhiên chương trình sẽ chạy chậm hơn. Năm 1958, 
ALGOL - ngôn ngữ lập trình bậc cao ñầu tiên ra ñời. Năm 1960 nó ñược bổ sung, chỉnh lí và 
có ảnh hưởng sâu sắc ñến các ngôn ngữ lập trình bậc cao sau này như FORTRAN, C, BASIC, 
PASCAL,... 
1.2. Turbo Pascal 
PASCAL là ngôn ngữ lập trình bậc cao của tác giả Niklaus Wirth (giáo sư người Thuỵ 
sĩ), ñược công bố vào ñầu những năm 1970. Tên PASCAL là ñể kỉ niệm nhà Toán học người 
Pháp B. Pascal. 
PASCAL là ngôn ngữ lập trình có tính cấu trúc và tính hệ thống: các kiểu dữ liệu ña 
dạng, các cấu trúc ñiều khiển chặt chẽ, các cấu trúc khối trong chương trình rõ ràng... 
PASCAL là ngôn ngữ lập trình có ñịnh kiểu rõ ràng: các ñại lượng (biến và hằng) ñã 
ñược khai báo ñể sử dụng với kiểu dữ liệu này thì không thể ñem dùng lẫn với kiểu khác. 
PASCAL ban ñầu ñược sáng tác ñể làm ngôn ngữ dạy học cho những người mới học lập 
trình. ðặc tính sáng sủa, dễ hiểu, dễ ñọc của nó giúp người mới học có thể viết một chương 
trình máy tính một cách dễ dàng. Sau khi ra ñời, do có nhiều ưu ñiểm,PASCAL ñã ñược nhiều 
hãng máy tính phát triển và cài ñặt cho nhiều hệ thống máy tính, như: ISO PASCAL 
(PASCAL chuẩn ), ANSI PASCAL v.v. Phổ biến nhất hiện nay ở nước ta cũng như trên thế 
giới là việc cài ñặt TURBO PASCAL cho các hệ thống máy tính. TURBO PASCAL ñược 
hãng BORLAND INTERNATIONAL hoàn thiện với các ưu ñiểm là chương trình viết gọn, 
Trường ðại học Nông nghiệp 1 - Giáo trình Tin học ñại cương --------------------------------------------- 113 
 113 
dịch nhanh, không ngừng ñược cải tiến ñáp ứng yêu cầu của người sử dụng. TURBO 
PASCAL ñã ñược phát triển qua các phiên bản ngày càng mở rộng và phức tạp. Việc khai 
thác sâu các tính năng của từng phiên bản là do khả năng và nhu cầu của người lập trình. Giáo 
trình này chọn version 5.0 làm chuẩn ñể minh hoạ, tuy nhiên người ñọc có thể áp dụng cho 
các phiên bản sau này như 6.0, 7.0. 
2. Yêu cầu phần mềm và cách khởi ñộng 
2.1. Yêu cầu phần mềm 
Phần mềm TURBO PASCAL có khá nhiều File, tuy nhiên ñể có thể bước ñầu học và sử 
dụng ñược, trên ñĩa cần có tối thiểu các file sau: 
 TURBO.EXE file chính, chứa cả chương trình dịch, hệ soạn thảo và các dịch vụ 
gỡ rối... 
 TURBO.TPL là thư viện các chương trình mẫu có sẵn của TURBO PASCAL 
Nếu có sử dụng ñồ hoạ thì cần chép thêm ñơn vị GRAPH.TPU và một số file phụ trợ 
khác tuỳ theo kiểu màn hình và kiểu chữ sử dụng. 
2.2. Khởi ñộng và thoát TURBO PASCAL 
Thông thường các file nói trên nằm trong thư mục TP (hoặc TURBO hay TP5, TP7 tuỳ 
theo phiên bản hay người sử dụng) 
Ta chuyển vào thư mục này bằng lệnh CD TP↵, sau ñó gõ TURBO ↵ . Màn hình sẽ hiện 
ra như sau: 
 File Edit Run Compile Options Debug Break/Watch 
 Line 1 Col 1 Insert Indent Unindent C:NONAME.PAS 
| 
 F1-Help F5-Zoom F6-Switch F7-Trace F8-Step F9-Make F10-Menu 
Dòng 1: là dòng menu chính, trên ñó có ghi các mục cơ bản nhất ñể người sử dụng có thể 
chọn bằng cách ấn ñồng thời Alt+ chữ cái ñầu của mục. Ví dụ: Alt+F ñể mở mục File. 
Dòng 2: là dòng trạng thái, cho người dùng biết một số thông số soạn thảo như toạ ñộ con 
trỏ, chế ñộ soạn thảo là viết chèn hay viết ñè, tên tệp ñang làm việc... 
Dòng cuối cùng là dòng hướng dẫn, nhắc người sử dụng một số phím chức năng chính. 
Phần màn hình rộng ở giữa là phần soạn thảo ñể ta nhập và chạy chương trình. 
Người mới học lập trình nên ghi nhớ ngay các phím chức năng: 
F2 ghi tệp ñang soạn thảo vào ñĩa. Nếu chưa ñặt tên sẽ có thông báo ñể ta gõ tên vào 
(tên ñược ñặt theo quy ñịnh của MS-DOS ) 
Trường ðại học Nông nghiệp 1 - Giáo trình Tin học ñại cương --------------------------------------------- 114 
 114 
F3 mở tệp mới 
Alt+F9 dịch chương trình 
Ctrl+F9 dịch và cho chạy chương trình 
Alt+X Kết thúc PASCAL trở về hệ ñiều hành 
3. Những quy ñịnh về cách viết biểu thức và chương trình 
3.1. Bộ kí tự 
TURBO PASCAL sử dụng bộ chữ viết như sau: 
- Bộ 26 chữ cái Latinh: A, B, ..., Z ; a, b, ..., z 
- Bộ các chữ số: 0, 1, ..., 9 
- Các kí hiệu Toán học: +, -, * , /, =, , ... 
- Dấu gạch nối, dấu chấm, dấu ngoặc và các kí hiệu ñặc biệt khác: _ . , ; ? [ ] ( ) $ % ... 
3.2 Từ khóa 
Từ khoá là một số từ dành riêng của TURBO PASCAL, những từ này ñã ñược gán sẵn 
những chức năng ñặc biệt, ta không ñược dùng vào việc ñặt tên hay các công việc khác. 
Sau ñây là một số từ quan trọng, bạn ñọc sẽ lần lượt biết các từ khoá và chức năng của từng từ 
qua các bài học. 
- Các từ khoá chung: Program, begin, end 
- Các từ khoá ñể khai báo: uses, const, type, label, var 
 procedure, function 
 array, string, record, ... 
- Các từ khoá lệnh: 
if... then... else... 
case ...of .... 
for .... to ... do... 
while... do... 
repeat... until... 
- Một số tên chuẩn: 
Boolean, char, integer, real, 
read, readln, write, writeln, 
abs, cos, sin, sqrt, exp... 
3.3 Tên 
Tên là một dãy kí tự dùng ñể chỉ tên các ñại lượng như tên hằng, tên biến, tên kiểu hay 
tên chương trình con. 
 Tên ñược ñặt theo quy tắc sau: bắt ñầu bởi một chữ cái, rồi ñến chữ số hay dấu gạch nối 
và không dài quá 127 kí tự (!). Tên thường ñược ñặt mang tính gợi nhớ. TURBO PASCAL 
không phân biệt chữ hoa và chữ thường khi viết từ khoá hay tên. 
Ví dụ : khi viết chương trình giải phương trình bậc 2, ta có thể ñặt tên chương trình là 
GIAI_PHUONG_TRINH_BAC2, ñặt tên biến chứa biệt thức ∆ là delta (không ñược dùng kí 
hiệu ∆), ñặt tên các nghiệm là X1 và X2,... 
- Dấu chấm phảy (;) dùng ñể ngăn cách các câu lệnh trong một chương trình 
- Lời giải thích ñược ñặt trong cặp dấu (* ... *) hoặc { ... }, các nội dung ñược chứa trong cặp 
dấu này sẽ bị chương trình bỏ qua trong khi dịch 
Trường ðại học Nông nghiệp 1 - Giáo trình Tin học ñại cương --------------------------------------------- 115 
 115 
4. Cấu trúc chung của một chương trình PASCAL 
 Ta hiểu một chương trình máy tính là một dãy các lệnh, các chỉ thị hướng dẫn máy 
thực hiện một nhiệm vụ, một xử lí nào ñó trên tập các dữ kiện vào và cho ra kết quả. 
Một chương trình PASCAL có cấu trúc chung như sau: 
 PROGRAM Tên_ chương_trình; 
 USES Danh sách ñơn vi.; 
 LABEL Danh sách nhãn; 
 CONST Danh sách hằng; 
 TYPE Danh sách kiểu; 
 VAR Danh sách biến; 
 PROCEDURE Khai báo thủ tục; 
 FUNCTION Khai báo hàm; 
 BEGIN 
 { Các câu lệnh; } 
 END. 
Một chương trình PASCAL ñiển hình gồm 3 phần: Phần tiêu ñề, phần khai báo, phần thân 
chương trình. 
4.1. Phần tiêu ñề 
 Phần này có dạng 
 PROGRAM Tên_ chương_trình; 
bắt ñầu bằng từ khoá PROGRAM, ít nhất một dấu cách rồi ñến tên chương trình, kết thúc bởi 
dấu chấm phảy (;). Tên_ chương_trình do ta ñặt ra, mang ý nghĩa nội dung của chương trình, 
dấu ; là bắt buộc phải có. 
Ví dụ : Program Giai_PT_bac2; 
Phần tiêu ñề là tuỳ chọn, có thể có hay không cũng ñược, nhưng nếu ñã có thì phải ñủ các 
thành phần như trên. 
4.2. Phần khai báo 
 Phần này mô tả các ñối tượng của bài toán mà chương trình sẽ xử lí. Các khai báo khác 
nhau ñược viết cách nhau bởi dấu ;. Gồm: 
Khai báo ñơn vị uses ... 
Khai báo nhãn label 
Khai báo hằng: const 
Khai báo kiểu: Type 
Khai báo biến: Var 
Khai báo chương trình con: Procedure 
 Function 
Các khai báo của phần này tuỳ thuộc từng bài toán cụ thể mà có thể có hay không, hoặc có 
một hoặc một vài khai báo. Cách khai báo và sử dụng cụ thể sẽ ñược giới thiệu ở trong mỗi 
phần sau. 
4.3. Phần thân chương trình 
Trường ðại học Nông nghiệp 1 - Giáo trình Tin học ñại cương --------------------------------------------- 116 
 116 
 Phần này ñược bắt ñầu bởi từ khoá BEGIN , kết thúc bởi từ khoá END và dấu chấm (.) hết. 
ðặt giữa BEGIN và END là các lệnh của chương trình , các lệnh ñược viết cách nhau bởi dấu 
; như sau: 
 BEGIN 
 Lệnh 1; 
 Lệnh 2; 
 ... 
 Lệnh n; 
 END. 
Phần này bắt buộc phải có ñối với mọi chương trình, nó chứa các lệnh xử lí các dữ liệu ñã 
ñược mô tả ở phần khai báo. ðây là phần chính của chương trình ñể giải quyết bài toán. 
Người lập trình phải bỏ nhiều công sức ñể thiết kế thuật giải và viết chương trình cho phần 
này. 
4.4. Các bước cơ bản khi lập trình 
Trước khi viết một chương trình giải quyết một bài toán nào ñó, người lập trình phải biết cách 
giải bài toán ñó hay chính xác hơn phải biết thuật giải ñể giải bài toán và trình bày thuật giải 
bằng ngôn ngữ lập trình . 
Bước 1: Soạn thảo chương trình 
 ðây là bước viết mới một chương trình, có thể viết trên giấy trước rồi nhập vào máy, 
sửa lỗi, cập nhật. Các chương trình này ñược gọi là chương trình nguồn, tên chúng ñược tự 
ñộng gán ñuôi PAS. Ta có thể dùng một hệ soạn thảo văn bản nào ñó, thường là hệ soạn thảo 
văn bản của chính TURBO PASCAL. 
Bước 2: Dịch chương trình (Alt+F9) 
 Gọi chương trình dịch (compiler) dịch chương trình nguồn ñã viết ở bước 1 sang dạng 
mã máy, kết quả thường tạo ra các tệp dạng *.EXE, *.OBJ. Bước này sẽ cho phép ta phát hiện 
các lỗi ñể sửa. Thường các lỗi cú pháp như thiếu dấu ; hoặc viết sai từ khoá, sai tên sẽ ñược 
thông báo. Ta phải sửa hết các lỗi rồi chuyển sang bước 3. 
Bước 3: Chạy chương trình và thử (Ctrl+F9) 
 Nếu các dữ kiện ñược cung cấp chính xác mà chương trình cho kết quả sai thì ta phải 
xem lại thuật giải. ðây là lỗi ñặc biệt nghiêm trọng vì nó không thể hiện ra ngoài qua các 
thông báo lỗi và có thể làm sai toàn bộ bài toán. Ta cũng phải quay lại bước 1 ñể sửa và chạy 
lại. 
Câu hỏi ôn tập chương I 
1- Nêu quy tắc ñặt tên trong Turbo Pascal. Cho 3 ví dụ tên ñặt ñúng, 3 ví dụ tên ñặt sai. 
2- Nêu cấu trúc chung của một chương trình Turbo Passcal. 

File đính kèm:

  • pdfGiáo trình Tin học đại cương - Phần 2 - Chương 1_Cấu trúc của chương trình Pascal.pdf