Triu Th Thu Giang_K56A_CNTT_ĐHSPHN 1
Giáo án số 18(tiết2)
Ví dụ về cách viết và sử dụng chương trình con
A. Mục đích và yêu cu:
Giúp học sinh nắm được sự giống nhau và khác nhau giữa
thủ tục và hàm
Giúp học sinh kĩ năng nhận biết được các thành phần
trong đầu hàm, nhận biết được câu lnh sdụng hàm
chương trình chính cùng các tham số thực sự.
B. Phương pháp, phương tiện:
1. Phương pháp:
Kết hợp các phương pháp dạy học như thuyết trình, vấn
đáp, minh hoạ…
Kết hợp lí thuyết với việc thực hành dvà phân tích ví
dụ cho học sinh hiểu dõ vn đề.
2. Phương tiện:
a) Phương tiện giảng dạy:
Sử dụng các phương tiện giảng dạy truyền thống như bảng
viết, phấn…(nếu có máy chiếu projector thì tốt hơn).
Giáo án đã được soàn đầy đủ và cẩn thận.
b) Pơng tiện học tập:
Sách giáo khoa tin học lớp 11.
Vở ghi lí thuyết và vlàm bài tập lớp 11.
Sách tham kho nếu có thì càng tốt.
C. Tiến trình lên lớp và nội dung bài ging:
I. Ổn định lớp(1’):
Yêu cầu lớp trưởng ổn định lớp và báo cáo sĩ số.
II. Kim tra bài cũ và gợi động cơ(4’):
Triu Th Thu Giang_K56A_CNTT_ĐHSPHN 2
a) Kiểm tra bài cũ(3’):
Hỏi: Em hãy phân biệt tham số giá trị(gọi tắt là tham strị) và tham s
biến(gọi tắt là tham biến) trong CTC thủ tục.
b) Gợi động cơ(1’):
Khi viết CT giải các bài toán lớn, phức tạp, CT thường rất dài gm hàng
trăm, hàng ngàn lệnh đòi hỏi phân chia thành cáci toán con. Do vậy cần
định CT thành các khối (các môđun), mỗi khối bao gồm các lệnh giải quyết
một bài toán cụ thể nào đó. c khối lệnh sẽ được xây dựng dưới dạng CTC.
Sau đó CT chính sẽ được xây dựng từ các CTC này.
III. Nội dung của bài học:
STT Nội dung Hoạt động của thầy và trò Thời
gian
1
Đặt vấn đề
Thuyết trình
- CTC gồm hai loại CTC
hàm và CTC thủ tục. Buổi
học ngày hôm trước,
chúng ta đã tìm hiu cách
viết và sử dụng thủ tục.
Buổi học ngày hôm nay,
chúng ta sẽ tìm hiu nốt
loi CTC còn lại qua bài
Cách viết và sdụng
hàm”.
1’
Triu Th Thu Giang_K56A_CNTT_ĐHSPHN 3
2
Nội dung bài học
1. Khái nim:
Hàm là một khối CT có
chức năng thực hiện một
nhim vụ cụ thể nào đó, kết
quả cho ta một giá trị.
Khai báo m:
1, Tiêu đề FUNCTION <Tên
hàm> ([<Danh sách tham
số>]) :<Kiểu của hàm>;
2, Các khai báo;
3, Thân CT: BEGIN
Các lnh;
End;
Trong đó:
Kiểu của hàm kiểu kết
quả của hàm và chỉ có thể
là một trong các kiểu:
Integer, Real, Char,
Boolean, String.
Nếu hàm không có tham
số hình thức thì không cn
viết Danh sách tham số.
Hàm có cu trúc tương tự
Thuyết trình
Cũng như thủ tục, hàm
là CTC. Gia hàm và th
tục có nhiều sự giống và
khác nhau:
Điểm giống nhau:
- Đều là CTC, cấu trúc
giống một CT;
- Đề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ề khai
báo và sử dụng các loại
tham snày,
Điểm khác nhau cơ bản
của hàm so vi thủ tục:
- Đầu hàm bắt đầu với từ
khoá FUNCTION, sau tên
hàm và phn khai báo
danh sách tham s(nếu
có) phải chỉ ra giá tr kết
quả của hàm thuộc kiểu dữ
liu nào.
- Trong CT hàm bắt buộc
35’
Triu Th Thu Giang_K56A_CNTT_ĐHSPHN 4
th
ủ tục chỉ khác phần đầu
hàm.
Trong thân của hàm cn
có câu lnh gán giá trị cho
tên hàm:
<Tên hàm> := <Biu thức>
Ví dụ: CT giản ước phân s
có sử dụng hàm tính ước
chung ln nhất (ucln) của hai
s
nguyên
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 DO
BEGIN
du:= x mod
y;
ph
i có một
l
trkết quả cho tên hàm
Chú ý: m cn được
khai báo và định nghĩa
trước khi sử dụng
Triu Th Thu Giang_K56A_CNTT_ĐHSPHN 5
x:=y;
y:=du;
END;
ucln:=x;
END;
BEGIN
Clrscr;
Writeln(‘nhap tu so,
mau so vao ’);
Readln(tuso,mauso);
A:=ucln(tuso,mauso);
IF A> 1 THEN
BEGIN
tuso:=tuso div A;
mauso:=mauso div
A;
END;
Writeln(tuso: 5,
mauso: 5);
END.
2. Sử dụng:
Tương tviệc sử dụng các
hàm chuẩn: viết tên hà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
Ví dụ:
tg:=ucln(tuso,mauso)*2+1;