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

Chia sẻ bởi Hà Ngọc Thương | Ngày 10/05/2019 | 61

Chia sẻ tài liệu: Bài 18. Ví dụ về cách viết và sử dụng chương trình con thuộc Tin học 11

Nội dung tài liệu:

1. Chương trình con được chia ra làm mấy loại
A. 1 loại
B. 2 loại
C. 3 loại
D. 4 loại
2. Cấu trúc chung của chương trình con được chia làm mấy phần
A. 1 phần
B. 2 phần
C. 3 phần
D. 4 phần
Hàm (Function) và thủ tục (Procedure)


3. Cấu trúc chung của chương trình chính được chia làm mấy phần
A. 1 phần
B. 2 phần
C. 3 phần
D. 4 phần
[]

Kiểm tra bài cũ
VÍ DỤ VỀ CÁCH VIẾT VÀ
SỬ DỤNG CHƯƠNG TRÌNH CON
BÀI 18:
GV: HÀ NGỌC THƯƠNG
Theo em để vẽ được ba hình chữ nhật trên ta viết câu lệnh thế nào?
1. Cách viết và sử dụng thủ tục.
Xét vd về ba hình chữ nhật có dạng sau:
* * * * * * *
* *
* * * * * * *

* * * * * * *
* *
* * * * * * *

* * * * * * *
* *
* * * * * * *
Writeln(‘* * * * * * *’);
Writeln(‘* *’);
Writeln(‘* * * * * * *’);
Writeln(‘* * * * * * *’);
Writeln(‘* *’);
Writeln(‘* * * * * * *’);
Writeln(‘* * * * * * *’);
Writeln(‘* *’);
Writeln(‘* * * * * * *’);
Ta có thể vẽ ba hình chữ nhật bằng 9 câu lệnh sau:
Nếu ta cần vẽ N hình chữ nhật như vậy thì chương trình sẽ như thế nào?
Trong trường hợp này ta có thể giải quyết vấn đề bằng cách nào?
Program Ve_3_HCN;
Begin
Writeln(`* * * * * * *`);
Writeln(`* *`);
Writeln(`* * * * * * *`);
Writeln; Writeln; {cach 2 dong}
Writeln(`* * * * * * *`);
Writeln(`* *`);
Writeln(`* * * * * * *`);
Writeln; Writeln; {cach 2 dong}
Writeln(`* * * * * * *`);
Writeln(`* *`);
Writeln(`* * * * * * *`);
Readln
End.
Program Ve_3_HCN_dung_thu_tuc;
Procedure Ve_HCN;
Begin
Writeln(`* * * * * * *`);
Writeln(`* *`);
Writeln(`* * * * * * *`);
End;
Begin
Ve_HCN; {Goi thu tuc Ve_HCN}
Writeln; Writeln; {cach 2 dong}
Ve_HCN;
Writeln; Writeln;
Ve_HCN;
Readln
End.
Em có nhận xét gì về 2 chương trình này?
1. Cách viết và sử dụng thủ tục.
procedure [];
[]
Begin
[];
End;
Phần đầu thủ tục gồm từ khoá Procedure, tiếp theo là tên thủ tục. Danh sách tham số có thể có hoặc không.
Phần khai báo dùng để khai báo hằng, kiểu, biến và có thể xác định các chương trình con khác được sử dụng trong thủ tục. Phần này có thể có hoặc không.
Dãy câu lệnh được viết giữa cặp Begin và End; tạo thành thân thủ tục.
Cách viết và sử dụng thủ tục.
a. cấu trúc của thủ tục.
Chú ý
Chương trình chính kết thúc bởi End. Còn thủ tục kết thúc bởi End;
Các thủ tục (nếu có) phải được đặt trong phần khai báo của chương trình chính, ngay sau phần khai báo biến.
Để sử dụng thủ tục, ta phải viết lệnh gọi thủ tục tương tự các thủ tục chuẩn.
Program VD_ThuTuc1;
Procedure Ve_HCN;
Begin
Writeln(`* * * * * * *`);
Writeln(`* *`);
Writeln(`* * * * * * *`);
End;
Begin
Ve_HCN; {Goi thu tuc Ve_HCN}
Writeln; Writeln; {cach 2 dong}
Ve_HCN;
Writeln; Writeln;
Ve_HCN;
Readln
End.
Hãy so sánh thủ tục và chương trình chính?
Em hãy cho biết vị trí của thủ tục trong chương trình?
Ta có thể sử dụng thủ tục như thế nào?
Program VD_ThuTuc1;
Procedure Ve_HCN;
Begin
Writeln(`* * * * * * *`);
Writeln(`* *`);
Writeln(`* * * * * * *`);
End;
Phần khai báo
Phần thân
Cách viết và sử dụng thủ tục.
a. cấu trúc của thủ tục.
Nếu ta cần vẽ các HCN có kích thước khác nhau thì cần phải giải quyết như thế nào?
Ta cần sử dụng 2 tham số làm dl vào là chdai và chrong.
Cách viết và sử dụng thủ tục.
b. Ví dụ về thủ tục.
Viết một chương trình con vẽ hình chữ nhật như trên…
* * * * * * … *
* * * * * * … *
*
*
ChRong
ChDai
ChRong-2
 Vẽ cạnh trên của hình chữ nhật:
For i:=1 to ChDai do Write(`*`); Writeln;
 Vẽ hai cạnh bên của hình chữ nhật:
For j:=1 to ChRong-2 do
Begin
Write(`*`);
For i:=1 to ChDai-2 do Write(` `);
Writeln(`*`);
End;
 Vẽ cạnh dưới cùng của hình chữ nhật:
For i:=1 to ChDai do Write(`*`); Writeln;
ChDai-2
Cách viết và sử dụng thủ tục.
b. Ví dụ về thủ tục.
Program VD;
Uses crt;
var a,b: byte;
Procedure Ve_HCN( chdai,chrong:integer);
Var i,j: integer;
Begin
For i:=1 to chdai do write(‘ * ’);
Writeln;
For j:=1 to chrong-2 do
begin
write(‘ * ’);
for i:=1 to chdai-2 do write(‘ ‘);
writeln(‘ * ’);
end;
For i:=1 to chdai Do write(‘ * ’);
writeln;
end;
BEGIN
CLRSCR;
Ve_HCN(25,10);
Writeln; a:=5 ; b:=10;
Ve_HCN(a,b);
readln;
END.
Biến cục bộ
Tham số thực sự (tham trị)
Tham số hình thức
Biến toàn cục
* Tham số và cách truyền tham số:
* Tham số và cách truyền tham số:
* Tham số và cách truyền tham số:
Tham số hình thức trị -> tham số giá trị gọi tắt là tham trị.
Tham số hình thức biến -> tham số biến gọi tắt là tham biến.
Chú ý
+ Tham số thực sự ứng với tham trị có thể là hằng, biến, biểu thức, hàm.
+ Tham số thực sự ứng với tham biến phải là tên biến.
VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON
Program VD;
Uses crt;
var a,b: integer;

Procedure Hoan_doi(Var x,y:integer);
Var TG: integer;
Begin
TG:= x;
x:= y;
y:=TG;
end;

Begin
Clrscr;
a:= 5 ; b:= 10;
Writeln( a:6 , b:6);
Hoan_doi(a,b);
Writeln( a:6 , b:6);
readln;
End.
Biến cục bộ
Tham số thực sự
Tham số hình thức (tham biến)
Biến toàn cục
Cho biết kết quả dl in ra màn hình khi thực hiện chương trình
5 10
10 5
VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON
Program VD;
Uses crt;
var a,b: integer;

Procedure Hoan_doi(Var x:integer; y:integer);
Var TG: integer;
Begin
TG:= x;
x:= y;
y:=TG;
end;

Begin
Clrscr;
a:= 5 ; b:= 10;
Writeln( a:6 , b:6);
Hoan_doi(a,b);
Writeln( a:6 , b:6);
readln;
End.
Biến cục bộ
Tham số thực sự
Tham số hình thức (tham biến)
Biến toàn cục
Cho biết kết quả dl in ra màn hình khi thực hiện chương trình
5 10
10 10
Tham số hình thức(tham trị)
Câu 2: Gi? s? ta cĩ chuong trình con khai b�o nhu sau:
Var a, b: Integer;
Procedure Tinh (var a,b: Integer);
L?i g?i n�o sau d�y l� d�ng:

A. Tinh(5,10) ;
B. Tinh(2,x) ;
C. Tinh(x,4) ;
D. Tinh(x,y) ;
TRẮC NGHIỆM CỦNG CỐ
Câu 3: Gi? s? ta cĩ chuong trình con khai b�o nhu sau:
Var a, b: Integer;
Procedure Hoan_doi(var x: integer; y: integer);
L?i g?i n�o sau d�y l� d�ng:
A. Hoan_doi(10, b);
B. Hoan_doi(5,10);
C. Hoan_doi(a, b+3);
D. Hoan_doi(a+3, 10);
Câu 1: Th? t?c du?c khai b�o ? d�u trong chuong trình?
A. Trong th�n chuong trình chính.
B. Trong ph?n khai b�o c?a chuong trình chính, ngay tru?c ph?n khai b�o bi?n.
B. Trong ph?n khai b�o c?a chuong trình chính, ngay sau ph?n khai b�o bi?n.
D. Khơng c?n khai b�o.
Câu 4: Xét chương trình sau:
Var a, b: Integer;
Procedure Hoan_doi(x: Integer; var y: Integer);
Var TG: Integer;
Begin
TG:=x; x:=y; y:=TG;
End;
BEGIN
a:=5; b:=10;
Hoan_doi(a, b);
Writeln(a:6, b:6); {Xuat ra man hinh}
END.
T?i v? trí ch� thích chuong trình s? xu?t hi?n ra?
A. 5 5
B. 10 5
C. 5 10
D. 10 10
Cấu trúc của thủ tục
procedure [];
[]
Begin
[];
End;
Thủ tục được khai báo và mô tả trong phần khai báo của chương trình chính, sau khai báo biến.
Để sử dụng thủ tục cần có lệnh gọi thủ tục có dạng:
[];
Có hai loại tham số hình thức là tham biến và tham trị. Tham biến được đặt sau từ khoá var trong danh sách tham số và phải được thay bằng tham số thực sự là tên biến.
Hãy nhớ
TIẾT HỌC ĐẾN ĐÂY LÀ KẾT THÚC
XIN CHÂN THÀNH CẢM ƠN CÁC THÀY CÔ GIÁO
ĐÃ ĐẾN DỰ TIẾT HỌC!
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...

Người chia sẻ: Hà Ngọc Thương
Dung lượng: | Lượt tài: 0
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)