Giáo trình Nhập môn Tin học LỜi nóI ĐẦU



tải về 4.67 Mb.
trang60/63
Chuyển đổi dữ liệu20.05.2018
Kích4.67 Mb.
1   ...   55   56   57   58   59   60   61   62   63

8.1. Các khái niệm

8.1.1. Khái niệm về chương trình con


Chương trình là một dãy các lệnh được xây dựng cho máy tính theo một trật tự xác định nhằm hoàn thành một công việc nào đó. Công việc này có thể chia ra thành nhiều công việc nhỏ và mỗi công việc nhỏ này lại được tổ chức như những chương trình. Mỗi chương trình này cũng có thể được chia nhỏ tiếp, ta gọi đó là các chương trình con.

Chương trình con là một đoạn chương trình thực hiện một nhiệm vụ riêng được khai báo trước khi sử dụng. Mỗi một chương trình con có thể là chương trình con của chương trình con khác. Chương trình ở mức ngoài cùng (được gọi bởi người sử dụng) là chương trình chính.

Khi một chương trình con được khai báo thì nó có thể được sử dụng nhiều lần thông qua các lời gọi chương trình con.

Có hai loại chương trình con đó là hàm (function) và thủ tục (procedure).



Vậy sử dụng chương trình con có ưu điểm gì?

Khi viết những đoạn chương trình nhỏ thì chương trình con không thực sự hữu ích nhưng khi viết các chương trình lớn ta sẽ thấy có những đoạn trình lặp đi lặp lại nhiều lần với các dữ liệu đầu vào khác nhau. Chương trình con sẽ giúp ta tránh được việc viết lặp nhiều lần bằng cách tổ chức chương trình thành nhiều chương trình con.

Đặc biệt là xây dựng những chương trình hoàn chỉnh kích thước lớn và phức tạp thì tất yếu sẽ chia thành nhiều mô đun nhỏ độc lập nhau, giao cho mỗi nhóm phát triển độc lập. Sau đó phối hợp các chương trình con đó lại sẽ cho ta một chương trình hoàn chỉnh.

Việc tổ chức chương trình thành nhiều chương trình con sẽ giúp chương trình dễ hiểu hơn, cấu trúc rõ ràng nhờ đó việc quản lý, sửa lỗi, bảo trì cũng dễ dàng hơn.

Trong Pascal có một số chương trình con đã được xây dựng sẵn và được tổ chức thành thư viện các chương trình con. Một số hàm mẫu như: abs, sqrt, sqr, sin, cos, … hay một số thủ tục như: clrscr, exit, break, …. Người lập trình có thể xây dựng thêm các chương trình con khác, kế thừa kết quả trước đấy, giảm chi phí và giảm công sức trong việc viết chương trình.

8.1.2. Một số khái niệm


a) Biến toàn cục (global variable) hay còn gọi là biến chung:

Biến toàn cục là biến được khai báo ở đầu chương trình, nó được sử dụng bên trong chương trình chính và cả bên trong chương trình con. Biến toàn cục sẽ tồn tại trong suốt quá trình thực hiện của chương trình.



b) Biến địa phương (local variable) hay còn gọi là biến riêng:

Biến địa phương là biến khai báo ở đầu chương trình con, và nó chỉ được sử dụng bên trong thân chương trình con hoặc bên trong chương trình con khác nằm trong nó.

Biến địa phương chỉ tồn tại khi chương trình con đang hoạt động, nghĩa là biến địa phương sẽ được cấp phát một vùng nhớ khi chương trình con được thi hành, và sẽ giải phóng vùng nhớ đó ngay sau khi chương trình con kết thúc.

*Chú ý: Khi trong một chương trình tồn tại biến địa phương và biến toàn cục trùng tên nhau thì khi thực hiện chương trình con, biến địa phương của chương trình con đó sẽ được ưu tiên.

c) Tham số thực sự (actual parameter) là một tham số mà nó có thể là một biến toàn cục, một biểu thức hoặc một giá trị số (cũng có thể là biến cục bộ khi sử dụng chương trình con lồng nhau) mà ta dùng chúng khi truyền giá trị cho các tham số hình thức tương ứng của chương trình con.

d) Tham số hình thức (formal parameter) là các biến được khai báo ngay sau Tên chương trình con, nó dùng để nhận giá trị các tham số thực truyền đến.

8.1.3. Sử dụng chương trình con


8.1.3.1. Khai báo chương trình con

Các chương trình con cần phải được khai báo trước khi có thể sử dụng. Trong Pascal các chương trình con còn phải được triển khai đầy đủ khi khai báo. Vị trí khai báo chương trình con là ở phần sau phần khai báo thư viện, nhãn, hằng kiểu, biến và ngay trước phần thân chương trình chính.

Cấu trúc chung một chương trình con gồm các phần sau:

(i) Phần tiêu đề chương trình con: nhằm khai báo

- Loại chương trình con: hàm (function) hay thủ tục (procedure)

- Tên chương trình con: rất quan trọng và nó tuân theo quy tắc đặt tên.

- Các tham số hình thức: là khai báo các đối tượng hình thức sẽ tham gia vào chương trình con

- Kiểu kết quả trả lại nếu là hàm.

(ii) Phần khai báo cho chương trình con: nhằm khai báo thư viện các nhãn, các hằng, kiểu các biến chỉ sử dụng trong chương trình con đó. Quy cách khai báo giống như khai báo trong chương trình chính.

(iii) Phần thân chương trình con: bao gồm các lệnh bao trong cặp từ khóa

(begin ..end;)

Begin


End;


V
nếu a ≥ 0

nếu a < 0


í dụ 8.1
: Viết chương trình tính giá trị biểu thức F:=

với a được nhập từ bàn phím.



Program tinh_F_a;

Uses crt;

Var a, F: real;

Procedure GT(a: real): real;

Begin

If a>=0 then GT:=a



Else GT:= abs(a);

End;


BEGIN

Clrscr;


write(‘ Nhap a = ‘);readln(a);

F:=GT(a);


writeln(‘Gia tri F = ‘,F:8:2);

readln;


END.


{Khai báo chương trình con (hàm)}


{Bắt đầu thân chương trình chính}
{Lời gọi hàm, giá trị hàm được gán cho biến F}



Ta cũng có thể sử dụng chương trình thủ tục để tính giá trị F như sau:


Program tinh_F_a;

Uses crt;

Var a, F: real;

Procedure tinh(var F:real;a: real);

Begin

If a>=0 then F:=a



Else F:= abs(a);

End;


BEGIN

Write(‘ Nhap a = ‘);readln(a);

tinh(F,a);

writeln(‘ Gia tri F = ‘, F:8:2);

readln;

END.



{Khai báo thủ tục}


{Bắt đầu thân chương trình chính}

{Lời gọi thủ thục}



8.1.3.2. Lời gọi chương trình con (thủ tục và hàm)
Để chương trình con được thi hành, ta phải có lời gọi đến chương trình con, lời gọi chương trình con thông qua tên chương trình con và danh sách tham số tương ứng (nếu có) theo các quy tắc:

- Trong thân chương trình chính hoặc thân chương trình con, ta chỉ có thể gọi tới các chương trình con trực thuộc nó.

- Trong chương trình con, ta có thể gọi các chương trình con ngang cấp đã được thiết lập trước đó hoặc cũng có thể gọi lại chính nó (chương trình con đệ qui).

Trong lời gọi hàm, thủ tục thì các danh sách tham số thực sự phải tương đương ứng một - một với danh sách tham số hình thức: đúng số lượng, thứ tự và kiểu dữ liệu.

Tại một thời điểm trong chương trình chính, khi gặp lời gọi chương trình con thì chương trình chính tạm dừng. các tham số hình thức sẽ được tạm gán các giá trị hiện tại của tham số thực sự và các lệnh xử lý trong chương trình con được tiến hành. Khi kết thúc chương trình con, điều khiển sẽ được trả về cho chương trình chính và công việc của chương trình chính tiếp tục lại từ chỗ vừa tạm dừng để thực hiện chương trình con.

1   ...   55   56   57   58   59   60   61   62   63


Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2016
được sử dụng cho việc quản lý

    Quê hương