Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 15 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
15
Dung lượng
777 KB
Nội dung
BÀI CŨ 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? Câu 1 Trả lời: Chương trình con gồm có hai loại: Hàm (Function) và Thủ tục (Procedure) Cấu trúc của chương trình con gồm: <Phần đầu> [<Phần khai báo]> <Phần thân> BÀI CŨ 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 nào? Đâu là phần đầu, phần khai báo, phần thâ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; END. PROCEDURE <tên_thủ_tục>[<DS các tham số hình thức>]; [<Phần khai báo>] BEGIN [<dãy các lệnh >] END; 1. Cách viết và sử dụng thủ tục a. Cấu trúc thủ tục: VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON - Phần đầu: gồm Procedure, tên thủ tục và các tham số hình thức. - Phần khai báo: các hằng, kiểu, biến và cũng có thể các chương trình con. - Phần thân: dãy các lệnh viết giữa Begin và end; VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON b. Sử dụng thủ tục: Lệnh gọi: <TÊN_THỦ_TỤC>[(Danh sách tham số thực sự)];. 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) - Lời gọi thủ tục được thực hiện trong <phần thân> của chương trình chính VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON c. Tham số hình thức: * Ví dụ: Tham số biến Khai báo: 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. Tham số giá trị • 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. • Trong lệnh gọi thủ tục: các tham số thực sự là các giá trị cụ thể VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON d. Các Ví dụ: * * * * * * * * * * * * VD1: Viết Ct vẽ 5 hình chữ nhật có dạng: PROGRAM VIDU; Procedure Vehinh; BEGIN Writeln(‘* * * * *’); Writeln(‘* *’); Writeln(‘* * * * *’); END; BEGIN {Chuong trinh chinh} For i:=1 to 5 do Vehinh; Readln; END. VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON 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. VD2: Hãy xây dựng thủ tục tìm SLN của 2 số rồi viết chương trình tìm số lớn nhất trong 5 số a, b, c, d, e Câu 1: Phát biểu nào sau đây sai: 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. Câu 2 : Giả sử ta có dòng đầu thủ tục là procedure P (Var A, B: Integer; C:integer); Thì các tham số hình thức được hiểu như sau: 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ị D. A, B là tham trị, C là tham biến [...]... Hdoi(x,5); D Hdoi(5,y); VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON 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 2 Viết thủ tục để nhập vào mảng 1 chiều gồm 10 phần tử số nguyên VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON ... Procedure nhap(var a: mang); D Procedure nhap(var a: array[1 10] of Byte); Câu 4: Cho a: real; b: byte; và dòng đầu thủ tục Procedure tong(n:byte; y: real); Lời gọi nào sau đây đúng: A tong(a); B tong(b,a); C tong(a;b); D tong(a,b); Câu 5: Cho các biến A,B: byte; C:real; Trong đó: A là tham trị, B và C là tham biến Khai báo dòng đầu thủ tục nào sau đây đúng: A Procedure Thamso(Var A:byte; B:Byte; C:real); . nhau của hình chữ nhật. 2. Viết thủ tục để nhập vào mảng 1 chiều gồm 10 phần tử số nguyên. VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON . [<dãy các lệnh >] END; 1. Cách viết và sử dụng thủ tục a. Cấu trúc thủ tục: VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON - Phần đầu: gồm Procedure, tên thủ tục và các tham số hình thức. -. báo: các hằng, kiểu, biến và cũng có thể các chương trình con. - Phần thân: dãy các lệnh viết giữa Begin và end; VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON b. Sử dụng thủ tục: Lệnh gọi: