./ 2009 CHƯƠNG VI:CHƯƠNG TRÌNH CON VÀ LẬP TRÌNH CÓ CẤU TRÚC CHƯƠNG VI:CHƯƠNG TRÌNH CON VÀ LẬP TRÌNH CÓ CẤU TRÚC... Ch ơng trình con là dãy lệnh mô tả một số thao tác nhất định và có thể
Trang 1Bµi 17
Tuần: 30-31
Tiết: 40-41
Ngày dạy: / ./ 2009
Tuần: 30-31
Tiết: 40-41
Ngày dạy: / ./ 2009
CHƯƠNG VI:CHƯƠNG TRÌNH CON VÀ LẬP TRÌNH CÓ CẤU TRÚC
CHƯƠNG VI:CHƯƠNG TRÌNH CON VÀ LẬP TRÌNH CÓ CẤU TRÚC
Trang 2Nhãm tr ëng
ViÖc A
ViÖc B
1 Kh¸i niÖm ch ¬ng tr×nh con
Trang 3Ch ơng trình con là dãy lệnh mô tả một số thao tác nhất
định và có thể đ ợc thực hiện (đ ợc gọi ) từ nhiều vị trí trong ch
ơng trình
1 Khái niệm ch ơng trình con
Lợi ích của việc sử dụng ch ơng trình con
- Tránh đ ợc việc phải viết lặp đi lặp lại cùng một dãy lệnh
- Hỗ trợ việc thực hiện các ch ơng trình lớn
- Phục vụ cho quá trình trừu t ợng hóa
- Mở rộng khả năng ngôn ngữ
- Thuận tiện cho phát triển, nâng cấp ch ơng trình
Trang 42 Phân loại ch ơng trình con
Ch ơng trình con
Hàm (Function)
Là ch ơng trình con
thực hiện một số thao
tác nào đó, và trả về
một giá trị qua tên
của nó.
Hàm (Function)
Là ch ơng trình con
thực hiện một số thao
tác nào đó, và trả về
một giá trị qua tên
của nó.
Thủ tục (Procedure)
Là ch ơng trình con thực hiện một số thao tác nào đó, và không trả về giá trị nào qua tên của nó.
Thủ tục (Procedure)
Là ch ơng trình con thực hiện một số thao tác nào đó, và không trả về giá trị nào qua tên của nó.
Tính tổng luỹ thừa
S = an + bm + cp + dq
Vẽ và đ a ra màn hình 5 hình chữ nhật có kích th
ớc khác nhau.
Trang 53 CÊu tróc cña ch ¬ng tr×nh con
<PhÇn khai b¸o>
< PhÇn th©n>
<PhÇn khai b¸o>
< PhÇn th©n>
Function <Tªnhµm>[(<ds tham sè>)] :kiÓu cña
hµm;
[< PhÇn khai b¸o >]
Begin
[<D·y c¸c lÖnh>]
tªnhµm := gi¸trÞ;
End;
Procedure <tªn thñ tôc> [(<ds tham sè>)];
[< PhÇn khai b¸o >]
Begin
[<D·y c¸c lÖnh>]
End;
Trang 6Ví dụ: Lập ch ơng trình tối giản phân số
Ví dụ: nhập 6/10 => ra 3/5
* INPUT : Nhập phân số a/b;
* OUTPUT : Phân số c/d - Trong đó: c = a / ƯCLN(a,b);
d = b / ƯCLN(a,b);
Viết ch ơng trình con thực hiện tìm ƯCLN(a,b) và gọi nó khi tính c,d trong ch ơng trình chính
Trang 7Program tgps;
Uses crt;
Var tu,mau,c,d : integer;
Function UCLN( a,b :integer) : integer;
Begin While a<> b do
if a>b then a := a-b else b:=b-a;
UCLN := a;
end;
BEGIN
Write( Nhap vao tu so vµ mau so: ); readln(tu,mau);‘ Nhap vao tu so vµ mau so:’); readln(tu,mau); ’); readln(tu,mau);
C := tu div UCLN(tu,mau) ; d := mau div UCLN(tu,mau);
Writeln( Phan so toi gian = , c, / , d);‘ Nhap vao tu so vµ mau so:’); readln(tu,mau); ’); readln(tu,mau); ‘ Nhap vao tu so vµ mau so:’); readln(tu,mau); ’); readln(tu,mau);
Readln;
Write( Nhap vao tu so va mau so: );‘Nhap vao tu so va mau so:’); ’);
C := 6 div UCLN(6,10) d := 10 div UCLN(6,10);
Writeln( Phan so toi gian = , 3, / , 5);‘ Nhap vao tu so vµ mau so:’); readln(tu,mau); ’); readln(tu,mau); ‘ Nhap vao tu so vµ mau so:’); readln(tu,mau); ’); readln(tu,mau);
Readln;
BEGIN
Readln(tu,mau);
USCLN=2;
USCLN=2;
Nhap vao tu so va mau so: 6 10 Phan so toi gian= 3/5
Trang 8Program tgps;
Uses crt;
Var tu,mau,c,d : integer;
Function UCLN( a,b :integer) : integer;
Begin While a<> b do
if a>b then a := a-b else b:=b-a;
UCLN := a;
end;
BEGIN
Write( Nhap vao tu so vµ mau so: ); readln(tu,mau);‘ Nhap vao tu so vµ mau so:’); readln(tu,mau); ’); readln(tu,mau);
C := tu div UCLN(tu,mau) ; d := mau div UCLN(tu,mau);
Writeln( Phan so toi gian = , c, / , d);‘ Nhap vao tu so vµ mau so:’); readln(tu,mau); ’); readln(tu,mau); ‘ Nhap vao tu so vµ mau so:’); readln(tu,mau); ’); readln(tu,mau);
Readln;
END
BiÕn a, b ® îc gäi lµ tham sè h×nh thøc
BiÕn tu, mau ® îc gäi
Trang 9- BiÕn toµn côc lµ biÕn ® îc khai b¸o ë ®Çu ch
¬ng tr×nh chÝnh ® îc sö dông trong toµn bé ch ¬ng tr×nh
tr×nh con chØ ® îc sö dông trong ch ¬ng tr×nh con Khi ra khái ch ¬ng tr×nh con biÕn nµy kh«ng toµn t¹i.
sau tªn ch ¬ng tr×nh con, nhËn gi¸ trÞ truyÒn vµo cña tham sè thùc.
Trang 10H·y nhí!
Ch ¬ng tr×nh con lµ mét d y ·
lÖnh gi¶i quyÕt mét bµi to¸n con cô thÓ.
CÊu tróc ch ¬ng tr×nh gåm:
Ph©n lo¹i ch ¬ng tr×nh con:
+ Hµm + Thñ tôc
<PhÇn khai b¸o>
< PhÇn th©n>
<PhÇn khai b¸o>
< PhÇn th©n>