1. Trang chủ
  2. » Giáo án - Bài giảng

Bai 18 Chuong Trinh Con ( Ham- Thu Tuc)

11 369 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 11
Dung lượng 710 KB

Nội dung

B i 18à GV: Tôn Thị Quỳnh Nga Để 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 Tính tổng luỹ thừa S = a S = a n n + b + b m m + c + c p p + d + d q q Vẽ và đưa ra màn hình 5 Vẽ và đưa ra màn hình 5 hình chữ nhật có kích hình chữ nhật có kích thước khác nhau 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ên hàm Tên hàm>(<ds tham số lúc khai báo>): kiểu của hàm; [< Phần khai báo >] Begin [<Dãy các lệnh>] tênhàm tênhàm := giá trị trả về; End; Procedure <tên thủ tục> (<ds tham số lúc khai báo>); [< Phần khai báo >] Begin [<Dãy các lệnh>] End; Hàm (Function) Thủ tục (Procedure) Lời gọi thực thi: tên biến:= tênhàm(<ds tham số lúc thực thi>); Lời gọi thực thi: tên thủ tục(<ds tham số lúc thực thi>);  Danh sách tham số khai báo có dạng: [Var] thamsố1 [Var] thamsố1 , , thamsố2 thamsố2 , , … … , , thamsốN: Kiểu DL 1 thamsốN: Kiểu DL 1 ; ; [Var] thamsốA [Var] thamsốA , , tham sốB tham sốB , , … … , , thamsốZ: Kiểu DL 2 thamsốZ: Kiểu DL 2 ; ; … … 4. Ghi chú:  Tham số và cách truyền tham số: • Tham số tại nơi gọi: Tham số THỰC ( biến chính) • Tham số tại nơi được gọi: Tham số HÌNH THỨC ( biến CTC) Tham số HÌNH THỨC TRỊ: THAM TRỊ Tham số HÌNH THỨC BiẾN: THAM BiẾN Kiểu TS hình thức Kiểu TS hình thức Khai báo Khai báo Giá trị của TS thực tương ứng Giá trị của TS thực tương ứng sau khi thực thi CTC sau khi thực thi CTC Ts hình thức trị Ts hình thức trị (Truyền bằng trị) (Truyền bằng trị) Không có Không có VAR VAR Giữ nguyên giá trị ban đầu trước Giữ nguyên giá trị ban đầu trước khi gọi CTC khi gọi CTC Ts hình thức biến Ts hình thức biến (Truyền bằng tham (Truyền bằng tham khảo khảo Có VAR Có VAR Lấy kq giá trị của CTC Lấy kq giá trị của CTC 4. Ghi chú: Ví dụ TS hình thức trị và TS hình thức biến: Program main; Var x, y: integer; Procedure sub( a: integer ; var b: integer); Begin a:=a+5; b:=b+5; Writeln(a,’ ‘,b); end; Begin x:=1; y:= 2; writeln(x,’ ‘,y); Sub(x,y); Writeln(x,’ ‘,y); End. TS hình thức Tham trị Tham biến Kết quả? X= 1 Y= 7 X= 6 Y= 7 4. Ghi chú  Quy tắc cho TS hình thức và TS thực: Quy tắc 2: Số lượng TS hình thức và TS thực phải tương ứng với nhau theo từng vị trí Quy tắc 3: Các TS hình thức và TS thực phải tương ứng với nhau về kiểu DL Quy tắc 4: Với TS hình thức được khai báo như là THAM TRỊ thì TS thực tương ứng có thể là hằng, biến, bt, trị trả về từ hàm. Với TS hình thức được khai báo như là THAM BiẾN thì TS thực tương ứng chỉ có thể là biến Quy tắc 1: Số lượng TS hình thức và TS thực phải bằng nhau Program main; Var x, y: integer; Procedure sub( a: integer, var b: integer); Begin a:=a+5; b:=b+5; Writeln(a,’ ‘,b); end; Begin x:=1; y:= 2; writeln(x,’ ‘,y); Sub(x,y); Writeln(x,’ ‘,y); End. 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 va 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ó. [...]...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ể Phân loại chương trình con: + Hàm + Thủ tục  Cấu trúc chương trình gồm: GV: Tôn Thị Quỳnh Nga < Phần thân> < Phần thân> . đị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 ơ . := 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. main; Var x, y: integer; Procedure sub( a: integer ; var b: integer); Begin a:=a+5; b:=b+5; Writeln(a,’ ‘,b); end; Begin x:=1; y:= 2; writeln(x,’ ‘,y); Sub(x,y); Writeln(x,’ ‘,y); End. TS hình thức Tham

Ngày đăng: 16/07/2014, 16:00

TỪ KHÓA LIÊN QUAN

w