II Procedure và Function (Thủ tục và hàm)

Một phần của tài liệu tin hoc co ban TH khong chuyen (Trang 73 - 76)

Có hai loại chơng trình con:

• Procedure (thủ tục). • Function (hàm).

Sự khác nhau cơ bản của hai loại này là Function trả lại kết quả cho tên của Function, còn Procedure không trả lại kết quả thông qua tên của nó.

Cấu trúc chung của một chơng trình trong đó có phần khai báo chơng trình con nh sau:

Program TenChuongTrinh; (*Tiêu đề*).

Label (*Khai báo các nhãn*);

....

Const (*Khai báo các hằng*);

...

Type (*Mô tả kiểu*);

...

Var (*Khai báo các biến*);

...

procedure TenThuTuc (Khai báo các tham số, nếu cần);

(*Khai báo Label, Const, Type, Var của riêng Procedure, nếu cần*). ...

Begin

...(*Thân chơng trình con*).

End;

Function TenHam (Khai báo các tham số, nếu cần); Kiểu_dữ _liệu;

(*Khai báo Label, Const, Type, Var của riêng Procedure, nếu cần*).

Begin

.... (*Thân chơng trình con*).

End; Begin

...(*Thân chơng trình*).

End.

Theo qui định này, LABEL trớc, rồi đến CONST, TYPE, VAR cuối cùng là PROCEDURE, các FUNCTION, phần nào không có thì bỏ đi, đơng nhiên không thể thiếu phần thân chơng trình chính.

Để minh hoạ, chúng ta xét một chơng trình sau: Ví dụ 1: Program PhuongTrinhBacHai; Uses Crt; Var a,b,c,dx,x1,x2:Real; Procedure Vao;

Begin

Write(‘Vao he so a=’); Readln(a); Write(‘Vao he so b=’); Readln(b); Write(‘Vao he so c=’); Readln(c); End; Procedure TinhDelta; Begin dx:=b*b-4*a*c;

if dx>=0 Then DeltaKhongAm Else DeltAm; End; Procedure DeltaKhongAm; Begin x1:=(-b+Sqrt(dx))/(2*a); x2:=(-b-Sqrt(dx))/(2*a); End; Procedure DeltAm; Begin

Write(‘Phuong trinh vo nghiem’); (adsbygoogle = window.adsbygoogle || []).push({});

End; Begin

Vào; TinhDelta;

End.

Trong chơng trình trên, tất cả các biến đều đợc khai báo ở chơng trình chính, các biến ấy đợc gọi là biến toàn cục, biến toàn cục có ý nghĩa trong toàn bộ chơng trình (nghĩa là các chơng trình con đều dung đợc). Trong chơng trình con cũng có phần khái báo riêng của nó, các biến đó gọi là biến cục bộ. Biến cục bộ chỉ có ý nghĩa trong ch- ơng trình con đó mà thôi.

Cấu trúc chung của Procedure và Function nh sau:

Procedure <Tên thủ tục> (Khai báo các tham số hình thức);

<Khai báo Label, Const, Type, Var và thậm chí cả các Procedure và Function>. ...

Begin

.... (*Thân chơng trình con*).

Và Function nh sau:

Function <Tên hàm> (Khai báo các tham số hìnhthức);Kiểu_dữ_Liệu_của_hàm;

<Khai báo: Label, Const, Type, Var và thậm chí có cả Procedure và Function>. ...

Begin

.... (*Thân chơng trình con *).

End;

Kết thúc chơng trình con bằng dấu chấm phẩy (;) không phải là dấu chấm (.) nh chơng trình chính.

Một phần của tài liệu tin hoc co ban TH khong chuyen (Trang 73 - 76)