Bài 18 Ví dụ về cách viết và sử dụng chương trình con

10 3.2K 26
Bài 18 Ví dụ về cách viết và sử dụng chương trình con

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

Thông tin tài liệu

GV : Đinh Nguyên Thanh Tú (st) – CENTEA Data chưa rõ nguồn gốc B i à 18 Tr NG THPT NG HƯỜ ĐỒ Ỷ T : TO N TINỔ Á – NG I So N: INH QUANG HUYƯỜ Ạ Đ TIẾT THỨ: 43 Em h·y cho biÕt cÊu tróc cña thñ tôc? Thñ tôc (Procedure) cã cÊu tróc nh­ sau: Procedure <tªn thñ tôc> [(<ds tham sè>)]; [< PhÇn khai b¸o >] Begin [<D·y c¸c lÖnh>] End; 2. C¸ch viÕt vµ sö dông hµm 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 nhất định, 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 nhất định, 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 nhất định, 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 nhất định, không trả về giá trị nào qua tên của nó. a.Cấu trúc Hàm Function <Tªn hµm>[(<ds tham sè>)] :<kiÓu d÷ liÖu>; [< PhÇn khai b¸o >] Begin [<D·y c¸c lÖnh>] <tªn hµm>:=<biÓu thøc>; 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) b. VÝ dô dụ 1: Lập chương trình tối giản phân số dụ 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è x/y; • OUTPUT : Ph©n sè tèi gi¶n c/d (tuso/mauso) - Trong ã:đ tuso = tuso/ƯCLN(x,y); mauso = mauso/ƯCLN(x,y);  Viết chương trình con thực hiện tìm ƯCLN(x,y) gọi nó khi tính tuso, mauso trong chương trình chính. Program toigian_phanso; Var tuso, mauso, a: integer; Function UCLN(x,y:integer):Integer; Var sodu:Integer; Begin while y<>0 do begin sodu:=x mod y; x:=y; y:=sodu; end; UCLN:=x; end; BEGIN Write(‘Nhap tu so, mau so:’); readln(tuso,mauso); a:= UCLN(tuso,mauso); If a>1 then begin tuso:=tuso div a; mauso:=mauso div a; end; Writeln(tuso:4,mauso:4); readln; END. Function <Tªn hµm>[(<ds tham sè>)] :<kiÓu d÷ liÖu>; [< PhÇn khai b¸o >] Begin [<D·y c¸c lÖnh>] <tªn hµm>:=<biÓu thøc>; End; • Các biến: - tuso, mauso, a là biến toàn cục - sodu là biến cục bộ Program toigian_phanso; Var tuso, mauso, a: integer; Function UCLN(x,y:integer):Integer; Var sodu:Integer; Begin while y<>0 do begin sodu:=x mod y; x:=y; y:=sodu; end; UCLN:=x; end; BEGIN Write(‘Nhap tu so, mau so:’); readln(tuso,mauso); a:= UCLN(tuso,mauso); If a>1 then begin tuso:=tuso div a; mauso:=mauso div a; end; Writeln(tuso:4,mauso:4); readln; END. • Việc sử dụng hàm: - Hoàn toàn tương tự như việc sử dụng hàm chuẩn - Khi viết lệnh gọi gồm tên hàm tham số thực sự tương ứng với tham số hình thức dụ 2: Tìm số nhỏ nhất trong 3 số a,b,c dụ 2: Tìm số nhỏ nhất trong 3 số a,b,c VÝ dô: nh p 3 2 6ậ => min 2 * INPUT : NhËp 3 sè a,b,c; • OUTPUT : Sè nhá nhÊt trong 3 sè  Viết chương trình thực hiện tìm số nhỏ nhất trong 3 số nhập từ bàn phím. Sử dụng hàm tìm số nhỏ nhất trong 2 số Program min3so; Var a,b,c:real; Function min(a,b:real):real; begin if a<b then min:=a else min:=b; end; BEGIN write(Nhap vao 3 so a,b,c); readln(a,b,c); Writeln(So nho nhat trong 3 so la,min(min(a,b),c)); Readln; END. Function <Tên hàm>[(<ds tham số>)] :<kiểu dữ liệu>; [< Phần khai báo >] Begin [<Dãy các lệnh>] <tên hàm>:=<biểu thức>; End; - Lnh gi hm cú th tham gia vo biu thc nh mt toỏn hng v thm chớ l tham s ca li gi hm, th tc khỏc GV : inh Nguyờn Thanh Tỳ (st) CENTEA Data cha rừ ngun gc Hãy nhớ! Cấu trúc của thủ tục hàm Cách viết sử dụng thủ tục, hàm trong chương trình con Phân biệt o Tham trị, tham biến o Biến toàn cục, biến cục bộ o Tham số thực sự, tham số hình thức . Việc sử dụng hàm: - Hoàn toàn tương tự như việc sử dụng hàm chuẩn - Khi viết lệnh gọi gồm tên hàm và tham số thực sự tương ứng với tham số hình thức Ví dụ. cha rừ ngun gc Hãy nhớ! Cấu trúc của thủ tục và hàm Cách viết và sử dụng thủ tục, hàm trong chương trình con Phân biệt o Tham trị, tham biến o Biến toàn

Ngày đăng: 11/06/2013, 01:25

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan