Tải bản đầy đủ (.doc) (5 trang)

Bai 18 Vi du va su dung chuong trinh con

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (111.7 KB, 5 trang )

Ngày dạy Lớp Sĩ số Học sinh nghỉ
/ / 2011 11B3 / ,
/ / 2011 11B4 / ,
/ / 2011 11B5 / ,
/ / 2011 11B6 / ,
Theo PPCT: 40
Bài 18. VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG
CHƯƠNG TRÌNH CON
(Tiết 1/2)
I. Mục tiêu
1. Kiến thức:
- Biết cấu trúc một thủ tục, danh sách vào ra hình thức.
- Biết mối quan hệ giữa chương trình và thủ tục .
- Biết gọi một thủ tục
2. Kỹ năng:
- Nhận biết các thành phần trong phần đầu của thủ tục.
- Sử dụng được lời gọi thủ tục.
- Viết thủ tục đơn giản.

3. Thái độ:
- Ham thích môn học, có tính kỷ luật cao và tính thần làm việc theo nhóm.
- Tiếp tục rèn luyện các phẩm chất cần thiết của người lập trình như: xem
xét vấn đề một cách cẩn thận, chu đáo, sáng tạo, không thỏa mãn với các kết quả
ban đầu đạt được,…
II. Chuẩn bị của GV và HS
1. Chuẩn bị của GV:
- Sách GK tin học 11, Sách GV tin học 11, giáo án, phòng học chung.
2. Chuẩn bị của HS:
- Sách GK tin học 11, bài học cũ ở nhà, xem trước bài 18.
III. Tiến trình bài dạy
1. Kiểm tra bài cũ:


- Cấu trúc của hàm và thủ tục?
2. Bài mới
Hoạt động của GV và HS Nội dung
GV: Đối với vị dụ này ta không sử dụng
thủ tục viết như thế nào?
HS trả lời: ta có thể viết 3 lần với 3 câu
lệnh sau:
Ví dụ 1
Viết chương trình vẽ 3 hình chữ nhật
có dạng:
* * * * * * *
* *
119
writeln(‘* * * * * * *’);
writeln(‘* *’);
writeln(‘* * * * * * *’);
GV: Có nhận xét gì về cách viết này?
HS: Ta phải lặp lại nhiều lần những câu
lậnh giống nhau.
GV: Nếu sử dụng thủ tục thì thủ tục đó sẽ
chứa nhữ lệnh nào?
HS: Thủ tục đó sẽ chứa ba câu lệnh nói
trên.
GV: Hướng dẫn học sinh viết chương trình.
HS: theo dõi hướng dẫn của giáo viên.
GV: Lệnh writeln; dùng để cách 2 dòng
mới vẽ hình CN thứ 2.
GV: Ta có thể vẽ 5 HCN được không?
HS: Được, thự hiện thên hai lời gọi thủ tục
ve_HCN;

GV: Ở thủ tục này ta chỉ vẽ được hình chử
nhật với chiều dài và rộng là cố định. Làm
thế nào để vẽ được hình chữ nhật có kích
thước tay đổi?
HS: suy nghĩ
GV: Khi đó ta phải sử dụng thủ tục có
tham số. Hướng dẫn HS viết chướng trình
có thủ tục chứa tham số.
HS: viết theo hướng dẫn của giáo viên.
GV: Hình chữ nhật đầu tiên có kích thước
4x2=>a=4, b=2
HS: chú ý lắng nghe
GV: Các tham số d,r trong thủ tục ve_HCN
gọi là tham số trị (tham trị)
GV: Trong thủ tục Hoan_doi trong SGK
Tr99 có gì khác ?
HS: Trong thủ tục có từ khóa var ở những
tham số.
GV: Khi đó tham số nào được khai báo
bằng var thì gọi là tham số biến. Giải thích
cho học sinh biết về sự khác nhau giữa
tham số trị và tham số biến. ở Hoandoi_1
cả x,y đều là tham biến, ở Hoandoi_2 chỉ
có y là tham biến.
* * * * * * *
(Sử dụng thủ tục)
Program vd1;
Procedure ve_HCN;
Begin
writeln(‘* * * * * * *’);

writeln(‘* *’);
writeln(‘* * * * * * *’);
End;
Begin
Ve_HCN; writeln;writeln;
Ve_HCN; writeln;writeln;
Ve_HCN;
Readln;
End.
Ví dụ 2
Tương tự VD1, nhưng kích thước hình
chữ nhật là khác nhau. Vẽ 4 HCN, hình
đầu tiên có kích thước 4x2, mỗi hình
sau có kích thước gấp đôi hình trước.
Program vd2;
Uses Crt;
Var a,b,i: integer;
Procedure ve_HCN(d,r:interger);
Var k,j:integer;
Begin
For k:=1 to d do write(‘*’);
Writeln;
For j:=1 to r−2 do
Begin
Write(‘*’);
For k:=1 to d−2 do write(‘ ‘);
Writeln(‘*’);
End;
For k:=1 to d do write(‘*’);
Writeln;

End;
Begin
a:=4; b:=2;
For i:=1 to 4 do
begin
ve_HCN(a,b);
Readln;
a:=a*2; b:=b*2;
End;
120
Readln;
End.
Procedure Hoandoi_1(var x,y:integr);
Var tg:integer;
Begin
Tg:=x; x:=y; y:=tg;
End;
Procedure Hoandoi_2(x:integer,var
y:integr);
Var tg:integer;
Begin
Tg:=x; x:=y; y:=tg;
End;
3. Củng cố:
- Cấu trúc của chương trình con dạng thủ tục? Sự khác nhau giữa tham biến
và tham trị?
4. Dặn dò:
+ Xem lại bài
+ Chuẩn bị bài “Cách viết và sử dụng hàm”
121

Ngày dạy Lớp Sĩ số Học sinh nghỉ
/ / 2011 11B3 / ,
/ / 2011 11B4 / ,
/ / 2011 11B5 / ,
/ / 2011 11B6 / ,
Theo PPCT: 41
Bài 18. VÍ DỤ VỀ CÁC VIẾT VÀ SỬ DỤNG
CHƯƠNG TRÌNH CON
(Tiết 2/2)
I. Mục tiêu
1. Kiến thức:
- Biết cấu trúc của một hàm, danh sách vào/ra hình thức.
- Biết mối quan hệ giữa chương trình và hàm.
- Biết gọi một hàm.

2. Kỹ năng:
- Nhận biết được các thành phần trong phần đầu của hàm.
- Viết được hàm đơn giản

3. Thái độ:
- Ham thích môn học, có tính kỷ luật cao và tính thần làm việc theo nhóm.
- Tiếp tục rèn luyện các phẩm chất cần thiết của người lập trình như: xem
xét vấn đề một cách cẩn thận, chu đáo, sáng tạo, không thỏa mãn với các kết quả
ban đầu đạt được,…
II. Chuẩn bị của GV và HS
1. Chuẩn bị của GV:
- Sách GK tin học 11, Sách GV tin học 11, giáo án, phòng học chung.
2. Chuẩn bị của HS:
- Sách GK tin học 11, bài học cũ ở nhà.
III. Tiến trình bài dạy

1. Kiểm tra bài cũ:
Cấu trúc của chương trình con dạng hàm?

2. Bài mới:
Hoạt động của GV và HS Nội dung
Ví dụ 1
Viết chương trình tìm số nhỏ nhất trong
ba số nhập từ bàn phím, trong đó sử dụng
hàm tìm số nhỏ nhất trong hai số.
Program vd1;
122
GV: Hướng dẫn học sinh viết hàm tìm
số nhỏ nhất trong 2 số, hàm có tên là
min, hàm này có bao nhiêu tham số?
HS: Hàm này có 2 tham số hình thức.
GV: Đối với hàm min không cần khai
báo biến cục bộ.
GV: Hướng dẫn học sinh hoàn chỉnh
chương trình.
HS: hoàn chỉnh chương trình theo
hướng dẫn của giáo viên.
GV: Ở ví dụ 2 ta cần viết hàm có tên là
lt(y,m) có hai tham số hình thức là y và
m.
y
m
=y*y*…*y
Vậy để được phép nhân m lần ta cần
thực hiện thông qua lệnh nào? Giá trị
ban đầu của tích này là bao nhiêu?

HS: Ta sử dụng lệnh
for i:=1 to m do
GV: Hướng dẫn học sinh viết hàm
lt(y,m).
HS: Học sinh tìm hiểu theo hướng dẫn
của giáo viên.
GV: Ở vd2 ta có sử dụng một biến trung
gian trong quá trình tính toán. Vậy khi
nào cần phải sử dụng biến trung gian khi
nào không ?
GV: Hướng dẫn học sinh tìm hiểu ví dụ
1 và 2 trong SGK Tr.101, 102
Var a,b,c:real;
Function Min(x,y:real):real;
Begin
if x<y then min:=x
else min:=y;
End;
Begin
Write(‘Nhap vao a,b,c=’);readln(a,b,c);
Write(‘Min=’,min(min(a,b),c));
Readln;
End.
Ví dụ 2
Viết chương trình tính x
n
, trong đó sử
dụng hàm lt(x,n). Với x,n nhập từ bàn
phím.
Program vd2;

Var x,n:integer;
Function Lt(y,m:integer):real;
Var tg,i:integer;
Begin
Tg:=1;
For i:=1 to m do tg:=tg*y;
Lt:=tg;
End;
Begin
Write(‘Nhap vao x,n=’);readln(x,n);
Write(‘ket qua=’,Lt(x,n));
Readln;
End.
Ví dụ 3: (Ví dụ 1 SGK Tr.101)
Ví dụ 4: (Ví dụ 2 SGK Tr.102)
3. Củng cố:
Cấu trúc của chương trình con dạng hàm? Kiểu kết quả của hàm chỉ có thể
là những kiểu nào?
4. Dặn dò:
+ Xem lại bài
+ Chuẩn bị “ Bài tập và thực hành 6”
123

×