Bµi 19 Gi¸o ¸n ®iÖn tö tin häc líp 11 Để viết chơng trình giải các bài toán lớn, phức tạp ngời lập trình có thể chia thành nhiều bài toán nhỏ, mỗi bài toán là một dãy lệnh mô tả một số thao tác nhất định (gọi là ctc). Sau đó ghép nối các chơng trình con thành chơng trình chính. Nhóm trởng V i ệ c A Việc B 1. Chơng trình con (ctc) 2. Phân loại chơng trình con 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 = a n + b m + c p + d q Vẽ và đa ra màn hình 5 hình chữ nhật có kích thớc khác nhau. 3. 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; Hàm (Function) Thủ tục (Procedure) 4. Một số ví dụ Bài toán 1: Lập chơng trình tối giản phân số Bài toán 1: 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. Program 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); C := tu div UCLN(tu,mau) ; d := mau div UCLN(tu,mau); Writeln( Phan so toi gian = , c, / , d);‘ ’ ‘ ’ Readln; END. Write( Nhap vao tu so va mau so: );‘ ’ C := 6 div d := 10 div UCLN(6,10) UCLN(6,10); Writeln( Phan so toi gian = , 3, / , 5);‘ ’ ‘ ’ Readln; END. BEGIN Readln(tu,mau); USCLN=2; USCLN=2; Nhap vao tu so va mau so: 6 10 Phan so toi gian= 3/5 Các CTC thờng đợc đặt sau phần khai báo của ch ơng trình chính. CTC chỉ đợc thực hiện khi có lời gọi nó. Lợi ích của việc sử dụng chơng trình con: Hỗ trợ việc thực hiện các chơng trình lớn. Tránh đợc việc phải viết lặp đi lặp lại cùng một dãy lệnh nào đó. Thuận tiện cho việc phát triển và nâng cấp ch ơng trình. Hã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> . chơng trình con thành chơng trình chính. Nhóm trởng V i ệ c A Việc B 1. Chơng trình con (ctc) 2. Phân loại chơng trình con Chơng trình con Chơng trình con Hàm (Function) Là chơng trình con. việc phát triển và nâng cấp ch ơng trình. Hã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ủ. số ví dụ Bài toán 1: Lập chơng trình tối giản phân số Bài toán 1: 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 đó: