14
Bài 18 : DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON 1 Phương pháp dạy học 3 - Hồ Minh Hiếu

Bai 18 tiet 2

Embed Size (px)

Citation preview

Bài 18: VÍ DỤ VỀ CÁCH

VIẾT VÀ SỬ DỤNG

CHƯƠNG TRÌNH CON

1Phương pháp dạy học 3 - Hồ Minh Hiếu

I.Cách viết và sử dụng thủ tục:

a.Cấu trúc của thủ tụcb.Ví dụ về thủ tụcc.Tham biến và tham trị

II.Cách viết và sử dụng hàm:

Bài 18: VÍ DỤ VỀ CÁCH VIẾT VÀ

SỬ DỤNG CHƯƠNG TRÌNH CON

2Phương pháp dạy học 3 - Hồ Minh Hiếu

Cách viết và sử dụng hàm :

• 1. Khái niệm:

• Hàm là mộtCTC thực hiện một sốthao tác nào đó và trả vềmột giá trị qua tên củanó.

Phương pháp dạy học 3 - Hồ Minh Hiếu 3

Cách viết và sử dụng hàm :

Một số hàm mà ta đã được học :

Abs(x) Sqrt(x)

Sin(x)

Phương pháp dạy học 3 - Hồ Minh Hiếu 4

Cách viết và sử dụng hàm :

• FUNCTION <Tên hàm> ([<Danh sách tham số>]) :<Kiểu của hàm>;

Kiểu của hàm làkiểu kết quả củahàm và chỉ có thểlà một trong cáckiểu: Integer, Real, Char, Boolean, String.

Nếu hàm không có tham sốhình thức thì không cần viết

Danh sách tham số.

Chú ý: Hàm cần được khaibáo và định nghĩa trướckhi sử dụng.

Phương pháp dạy học 3 - Hồ Minh Hiếu 5

Cách viết và sử dụng hàm :

Tiêu đềFUNCTION <Tên hàm> ([<Danh sách tham số>])

:<Kiểu của hàm>;Các khai báo;Thân chương trình:

BEGINCác lệnh;

End;

Phương pháp dạy học 3 - Hồ Minh Hiếu 6

Cách viết và sử dụng hàm :• Hàm trả về một giá trị nên trong phần thân hàm ta

có thêm dòng lệnh:

•< Tên hàm >:= < Biểu thức>;

Vậy khi hàm trả về một

giá trị thì ta sử dụng cái

gì để nhận giá trị đó?

Sử sụng 1 biến để nhận giá

trị

Phương pháp dạy học 3 - Hồ Minh Hiếu 7

Cách viết và sử dụng hàm :

FUNCTION ucln ( x , y : integer) : integer ;VAR du: integer;BEGIN

WHILE y<>0 DOBEGIN

du:= x mod y;x:=y;

y:=du;END;

ucln := x;END;

Kiểu giá trị trảvề của hàm ucln

là integer

Dòng lệnh gángiá trị cho tên

hàm

Tênhàm

Phương pháp dạy học 3 - Hồ Minh Hiếu 8

Cách viết và sử dụng hàm :

Đều là CTC, có cấu trúc giống mộtchương trình

Đều có thể chứa các tham số(tham số giá trị và tham số biến), cùng tuân theo các quy định về khaibáo và sử dụng các loại tham số này.

Giốngnhau

So sánh Hàm và Thủ tục

Phương pháp dạy học 3 - Hồ Minh Hiếu 9

Cách viết và sử dụng hàm :

• Đầu hàm bắt đầu với từ khoá FUNCTION,sau tên hàm và phần khai báo danh sáchtham số (nếu có) phải chỉ ra giá trị kết quảcủa hàm thuộc kiểu dữ liệu nào.

So sánh Hàm và Thủ tục

Hàm luôn cho một giá trị kết quả thuộc kiểu xác định và giá trịđó được gán cho tên hàm, kiểu của hàm phải được khai báo

trong phần đầu của hàm

KHÁC NHAU :

Trong chương trình hàm bắt buộc phải có một lệnh gán

giá trị kết quả cho tên hàm

Phương pháp dạy học 3 - Hồ Minh Hiếu 10

Cách viết và sử dụng hàm :

• 2. Ví dụ :

• CT giản ước phânsố có sử dụng hàm tínhước chung lớn nhất (ucln) của hai số nguyên.

Phương pháp dạy học 3 - Hồ Minh Hiếu 11

PROGRAM gian_uoc_phan_so;USES CRT;VAR tuso, mauso, a: integer;FUNCTION ucln( x , y : integer): integer;VAR du: integer;BEGIN

WHILE y<>0 DOBEGIN

du:= x mod y;x:=y;y:=du;

END;ucln := x;END;BEGINClrscr;

Writeln(‘nhap tu so, mau so vao ’);Readln(tuso,mauso);A:=ucln(tuso,mauso);

IF A> 1 THENBEGIN

tuso:=tuso div A;mauso:=mauso div A;

END;Writeln(tuso: 5, mauso: 5);

END.

Hàm

Biến toàncục

Biếncục bộ

Tham sốgiá trị

Tham sốthực sự

Phương pháp dạy học 3 - Hồ Minh Hiếu 12

Cách viết và sử dụng hàm :

• 2. Sử dụng:

• - Tương tự việc sử dụng các hàm chuẩn: viết tênhàm cần gọi, thay thế các tham số hình thức bằng các tham sốthực sự tương ứng.

• -Lời gọi hàm có thể tham gia vào biểu thức nhưmột toán hạng hoặc là tham số của lời gọi hàm, thủ tục khác.

Ví dụ:

tg:=ucln(tuso,mauso)*2+1;

Phương pháp dạy học 3 - Hồ Minh Hiếu 13

Phương pháp dạy học 3 - Hồ Minh Hiếu 14