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 (737.41 KB, 15 trang )
<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1>
Trong ngôn ngữ lập trình Pascal, chương trình con gồm
mấy loại ? Có tên gọi là gì ? Hãy nêu cấu trúc của chương
trình con?
<b>Trả lời: </b>
<sub> Chương trình con gồm có hai loại: </sub>
<b>Hàm</b> (Function) và <b>Thủ tục</b> (Procedure)
<sub> Cấu trúc của chương trình con gồm:</sub>
<b> <Phần đầu></b>
Hãy cho biết chương trình sau
sử dụng chương trình con là
thủ tục hay hàm? Đó là đoạn
Program Tim_Max;
Var a,b,c,d,e,ln1,ln2,ln3,ln4:integer;
Procedure sln(a,b:integer;var max:integer);
Begin
If a>b then max:=a else max:=b;
End;
BEGIN
Write('nhap a,b,c,d,e:'); Readln(a,b,c,d,e);
sln(a,b,ln1);
sln(ln1,c,ln2);
sln(ln2,d,ln3);
sln(ln3,e,ln4);
Write('so lon nhat la:',ln4);
Readln;
<b> PROCEDURE</b> <tên_thủ_tục>[<DS các tham số hình thức>];
[<Phần khai báo>]
<b>BEGIN</b>
[<dãy các lệnh >]
<b>END;</b>
<b>VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON</b>
<b>- Phần đầu: gồm Procedure, tên thủ tục và các tham số hình thức.</b>
<b>VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON</b>
<b>b. Sử dụng thủ tục:</b>
Lệnh gọi:
<b><TÊN_THỦ_TỤC>[</b><i><b>(Danh sách tham số thực sự)</b></i><b>];. </b>
Từ chương trình trên,
hãy xác định vị trí của
thủ tục và lời gọi thủ tục
trong chương trình?
-Thủ tục được khai báo ở <phần khai báo> của chương
trình chính, sau khai báo biến (với từ khóa Var)
<b>VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON</b>
<b>c. Tham số hình thức:</b>
<b>* Ví dụ:</b>
<b>Tham số biến</b>
<sub> Khai báo:</sub>
VAR
DS tham số hình thức:kiểu dữ liệu
• Trong lệnh gọi thủ tục: các tham
số thực sự là tên các biến chứa dữ
liệu ra.
• Giá trị có thể bị thay đổi sau
khi thực hiện xong thủ tục.
<b>Tham số giá trị</b>
• Khai báo:
<DS tham số hình thức>: <kiểu dữ
liệu>
• Giá trị khơng thay đổi khi
thực hiện xong thủ tục.
<b>VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON</b>
<b>d. Các Ví dụ:</b>
* * * * *
* *
* * * * *
<b>VD1: Viết Ct vẽ 5 hình chữ nhật có dạng:</b>
<b>PROGRAM VIDU;</b>
<b> Procedure Vehinh;</b>
<b> BEGIN</b>
Writeln(‘* * * * *’);
Writeln(‘* *’);
Writeln(‘* * * * *’);
<b> END;</b>
<b> </b>
BEGIN {Chuong trinh chinh}
<b> For i:=1 to 5 do Vehinh;</b>
<b> Readln;</b>
<b>VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON</b>
Var a,b,c,d,e,ln1,ln2,ln3,ln4:integer;
Procedure sln(a,b:integer;var max:integer);
Begin
If a>b then max:=a else max:=b;
End;
BEGIN
Write('nhap a,b,c,d,e:'); Readln(a,b,c,d,e);
sln(a,b,ln1);
sln(ln1,c,ln2);
sln(ln2,d,ln3);
sln(ln3,e,ln4);
Write('so lon nhat la:',ln4);
Readln;
END.
<b>Câu 1: Phát biểu nào sau đây sai:</b>
A. Danh sách tham số hình thức có thể có hoặc khơng.
B. Kết thúc thủ tục END;
C. Thủ tục được viết trong thân chương trình.
D. Tham số hình thức dùng khi khai báo, tham số thực sự dùng khi
gọi thủ tục.
<b>Câu 2 : Giả sử ta có dịng đầu thủ tục là</b>
<b> procedure P (Var A, B: Integer; C:integer);</b>
<b> Thì các tham số hình thức được hiểu như sau:</b>
A. A, B, C đều là các tham biến
B. A, B là tham biến, C là tham trị
C. A, B, C đều là tham trị
<b>Câu 4: Cho a: real; b: byte; và dòng đầu thủ tục</b>
<b> Procedure tong(n:byte; y: real);</b>
<b> Lời gọi nào sau đây đúng:</b>
<b>Câu 5: Cho các biến A,B: byte; C:real; </b>
<b>Trong đó: A là tham trị, B và C là tham biến.</b>
<b>Khai báo dòng đầu thủ tục nào sau đây đúng:</b>
A. Procedure Thamso(Var A:byte; B:Byte; C:real);
B. Procedure Thamso(A:byte; Var B:Byte; C:real);
C. Procedure Thamso(A:byte; Var B:Byte; Var C:real);
D. Procedure Thamso(A,B:Byte; Var C:real);
<b>Câu 7: Cho ch ơng trình sau: </b>
Var x,y:byte;
Procedure Hdoi(a:byte;var b:byte);
Var tg:byte;
Begin
Tg:=a; a:=b; b:=tg;
End;
Begin
x:=1; y:=2; Hdoi(x,y);
Writeln(‘hoan doi la: ’,x,y);
Readln;
End.
<b>KÕt qu¶ xuất hiện trên màn hình là:</b>
<b>Li gi th tc no sau đây là đúng:</b>
A. Hoandoi(x,y);
B. Hdoi(x);
<b>VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON</b>
1. Viết 2 thủ tục tính chu vi và diện tích của hình chữ
nhật. Sau đó thực hiện lời gọi 2 thủ tục này trong
chương trình chính với các kích thước khác nhau của
hình chữ nhật.