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> . ơ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. 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 +. 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 -