Phân loại CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI Chương trình con gồm có 2 loại: Hàm Function Là chương trình con Thực hiện một số thao tác nào đó Trả về một giá trị qua tên hàm Thủ tục Procedure
Trang 1CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI
(Tiết 2)
Trang 22 Phân loại và cấu trúc của chương trình con
a Phân loại
CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI
Chương trình con gồm có 2 loại:
Hàm
(Function)
Là chương trình con Thực hiện một số thao tác nào đó Trả về một giá trị qua tên hàm
Thủ tục
(Procedure)
Là chương trình con Thực hiện một số thao tác nào đó
Sqrt(x): Trả về căn bậc 2 của số x
Length(S): Trả về chiều dài xâu S
EOF(<biến tệp>): Trả về giá trị True nếu con trỏ đang chỉ tới cuối tệp
Writeln(<danh sách kết quả>): Xuất danh sách kết quả ra màn hình
Delete(S,vt,N): Xóa N ký tự trong xâu S, tính từ
vị trí thứ vt
Assign(<biến tệp>,<tên tệp>): Gắn tên tệp cho biến tệp.
Khơng trả về giá trị nào thơng qua tên thủ tục
Trang 32 Phân loại và cấu trúc của chương trình con
b Cấu trúc chương trình con
CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI
Hãy trình bày cấu trúc của một chương
trình?Cấu trúc chương
trình
[<Phần khai báo>]
<Phần thân>
Cấu trúc chương trình con
<Phần đầu>
[<Phần khai báo>]
<Phần thân>
Là phần bắt buộc phải cĩ,Được dùng để khai báo tên chương trình con, nếu là hàm thì cần khai báo kiểu dữ liệu cho giá trị trả về
Có thể khai báo biến cho dữ liệu vào và ra, các hằng và biến sử dụng trong chương trình con.
Là một dãy lệnh
t trong c p
begin
end;
Trang 4Cấu trúc hàm và thủ tục
Cấu trúc thủ tục
Procedure <ten_thu_tuc>[(danh sach tham sô) ]; Function <ten_ham>[(danh sach tham số) ]:<kiểu
dữ liệu của hàm>;
Var
<danh sach biến>:<kiểu dữ liệu> Var
<danh sach biến>:<kiểu dữ liệu>
Begin
<dãy câu lệnh>;
End;
Begin
<dãy câu lệnh>;
Ten_ham:=<biểu thức>;
End;
Ten_ham:=<biểu thức>; Không thiếu
Cấu trúc hàm
Function Luythua(x: Real; k: Integer): Real; Var i: Integer; lt: Real;
Begin lt:=1.0;
For i:=1 to k do ltx:=lt*x;
Luythua:=lt;
End;
Procedure ve(n:integer);
Var
i:integer;
Begin
For i:=1 to n do write(‘*’);
End;
Ví dụ
Ví dụ
Trang 52 Phân loại và cấu trúc của chương trình con
CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI
Program TongLuythua;
Var a, b, c, d, Tong: Real;
m, n, p, q: Integer;
Function Luythua(x: Real; k: Integer): Real;
Var i: Integer; ltx: Real;
Begin
lt:=1.0;
For i:=1 to k do lt:=lt*x;
Luythua:=lt;
End;
Begin
Write(' Nhap a, b, c, d, m, n, p, q: ');
Readln(a, b, c, d, m, n, p, q);
Tong:=Luythua(a,m)+Luythua(b,n)+Luythua(c,p)+Luythua(d,q);
Write(' Tong luy thua = ',Tong:8:2);
Readln
End.
x : Real; k : Integer Var i : Integer; ltx : Real;
Var a , b , c , d , Tong : Real;
m , n , p , q : Integer;
Được khai báo cho dữ liệu vào/ra và gọi là
tham số hình thức
Được khai báo, sử dụng trong chương trình con và gọi là biến cục bộ
Được khai báo trong chương trình chính và sử dụng trong toàn bộ chương trình và gọi là
biến toàn cục
Trang 6procedure ve(n:integer); Var
i:integer;
Begin
For i:=1 to n do write(‘*’); End;
Program ve_duong_thang; Var
a,b:integer;
Begin
A:=6;b:=10;
Ve(a); writeln;
Ve(b);
Readln;
End.
Trang 7Ví trí của chương trình con nằm ở đâu?
- Vị trí chương trìn con nằm sau phần khai báo biến của chương trình chính
Trang 82 Phân loại và cấu trúc của chương trình con
* Một số thuật ngữ
CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI
- Tham số hình thức của chương trình con: Là các biến
được khai báo cho dữ liệu vào/ra
- Biến cục bộ: Là các biến được khai báo, sử dụng trong chương trình con
- Biến toàn cục: Là các biến được khai báo trong chương trình chính và sử dụng trong toàn bộ chương trình
* Lưu ý: Một chương trình con có thể có hoặc không có tham số hình thức, cũng như biến cục bộ
Trang 9Procedure Ve_HCN;
Begin
Writeln('************************ ' );
Writeln('* * ' );
Writeln('* * ' );
Writeln('************************ ' );
End;
Begin
Ve_HCN;
Readln
End.
Ví dụ về chương trình con không có tham số hình thức và biến cục bộ:
Trang 102 Phân loại và cấu trúc của chương trình con
c Thực hiện chương trình con
CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI
Để thực hiện chương trình con, ta cần phải có lệnh gọi nó tương tự lệnh gọi hàm hay thủ tục chuẩn, bao gồm tên chương trình con và các tham số (nếu có) Các tham số này được gọi là tham số thực sự
Trang 112 Phân loại và cấu trúc của chương trình con
c Thực hiện chương trình con
CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI
Program Tong_Luy_thua;
Var a, b, c, d, Tong: Real;
m, n, p, q: Integer;
Function Luythua(x: Real; k: Integer): Real;
Var i: Integer; ltx: Real;
Begin
ltx:=1;
For i:=1 to k do ltx:=ltx*x;
Luythua:=ltx;
End;
Begin
Write(' Nhap a, b, c, d, m, n, p, q: ');
Readln(a, b, c, d, m, n, p, q);
Tong:=Luythua(a,m)+Luythua(b,n)+Luythua(c,p)+Luythua(d,q);
Write(' Tong luy thua = ',Tong:8:2);
Readln
End.
Luythua( a , m )
Lời gọi chương trình con
Tên chương trình con Tham số thực sự
Trang 122 Phân loại và cấu trúc của chương trình con
c Thực hiện chương trình con
CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI
Để thực hiện chương trình con, ta cần phải có lệnh gọi nó tương tự lệnh gọi hàm hay thủ tục chuẩn, bao gồm tên chương trình con và các tham số (nếu có) Các tham số này được gọi là tham số thực sự
* Chú ý: Các tham số thực sự và tham số hình thức phải có sự tương ứng về thứ tự và kiểu dữ liệu
Trang 13 Có 2 loại chương trình con là Hàm
và Thủ tục
Cấu trúc chương trình con gồm 3 phần: Phần đầu, phần khai báo và phần thân.
Các thuật ngữ: Tham số hình thức ,
tham số thực sự , biến cục bộ , biến toàn cục
Để thực hiện một chương trình con, cần phải có lệnh gọi chương trình con, bao gồm tên chương trình con và các tham số thực sự (nếu có).
Trang 14TIẾT HỌC ĐẾN ĐÂY LÀ HẾT
XIN CHÂN THÀNH CẢM ƠN QUÝ THẦY CÔ ĐÃ ĐẾN
DỰ GIỜ, THĂM LỚP!
CẢM ƠN CÁC EM ĐÃ
CHÚ Ý THEO DÕI!
Trang 15Length(st), sqrt(x), abs(x), sqr(x), eof(f) ….