Bai 17 Vi du ve cach viet va Su dung CTC

24 12 0
Bai 17 Vi du ve cach viet va Su dung CTC

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Muoán khai baùo x laø tham soá giaù trò, y vaø z laø tham soá bieán (x, y, z thuoäc kieåu integer) trong thuû tuïc coù teân laø “CTC” thì khai baùo naøo sau ñaây laø ñuùng. Procedure [r]

(1)

BỘ MÔN TIN HỌC 11

Người thực hiện: Châu Quốc Phong Giáo viên trường THPT Trà Cú

Tập thể lớp 11A1 - Kính chào quý Thầy

Tập thể lớp 11A1 - Kính chào quý Thầy cô

(2)(3)

Chương 6: CHƯƠNG TRÌNH CON VÀ LẬP TRÌNH CÓ CẤU TRÚC Chương trình

là ?

Phân loại chương trình ?

Điểm khác bản hàm thủ

(4)

1 Cách viết sử dụng thủ tục

a Cấu trúc thủ tục

b Ví dụ thủ tục

(5)

• Xét ví dụ vẽ hình chữ nhật có dạng sau: • * * * * * * *

• * * • * * * * * * *

1 Cách viết sử dụng thủ tục

Để vẽ hình chữ nhật trên, ta cần dùng câu

lệnh nào?

(6)

procedure Ve_Hcn;

• begin

writeln(‘* * * * * * *’); writeln(‘* *’); writeln(‘* * * * * * *’);

• end;

1 Cách viết sử dụng thủ tục

{bắt đầu thủ tục}

(7)

procedure <tên thủ tục> [(<danh sách tham số>)]; • [<phần khai báo>]

begin

[<dãy lệnh>]

end;

1 Cách viết sử dụng thủ tục

•a Cấu trúc thủ tục:

procedure

(8)

program VD_thutuc1; procedure Ve_Hcn; begin

writeln('* * * * * * *'); writeln('* *');

writeln('* * * * * * *'); end;

begin

Ve_Hcn;

writeln;writeln; Ve_Hcn;

writeln;writeln; Ve_Hcn;

readln end

1 Cách viết sử dụng thủ tục

Thủ tục Ve_Hcn

(chương trình Ve_Hcn)

(9)

program VD_thutuc1; procedure Ve_Hcn; begin

writeln('* * * * * * *'); writeln('* *'); writeln('* * * * * * *'); end; Begin Ve_Hcn; writeln;writeln; Ve_Hcn; writeln;writeln; Ve_Hcn; readln end

Giả sử ta cần vẽ nhiều hình chữ nhật với kích thước khác (25x10; 5x10; 4x2), thủ tục

có thực khơng ?

Để giải toán trên, thủ tục Ve_Hcn

viết lại ?

(10)

• Ví dụ 1: Chương trình vẽ hình chữ nhật có kích thước khác cách dùng thủ tục Ve_Hcn với tham số chdai, chrong Giá trị tham số chdai, chrong ngun (integer).

•b Ví dụ thủ tục

1 Cách viết sử dụng thủ tục

Khi phần đầu thủ tục viết sau: procedure Ve_hcn(chdai, chrong: integer);

Khi phần đầu thủ tục

(11)

1 procedure Ve_Hcn(chdai, chrong: integer);

2 var i, j: integer;

3 begin

4 for i:=1 to chdai write('*');

5 writeln;

6 for j:=1 to chrong-2 begin

write('*');

for i:=1 to chdai-2 write(' '); writeln('*');

end;

7 for i:=1 to chdai write('*');

8 writeln;

9 end;

•b Ví dụ thủ tục

1 Cách viết sử dụng thủ tục

Tham số hình thức Vẽ cạnh

hình chữ nhật

Vẽ hai cạnh bên

(12)

begin clrscr; Ve_Hcn(25,10); writeln;writeln; Ve_Hcn(5,10); readln; clrscr; a:=4; b:=2; for i:=1 to begin Ve_Hcn(a,b); readln; clrscr; a:=a*2; b:=b*2; end; readln;

* Trong lệnh gọi thủ tục, tham số hình thức thay tham số thực tương ứng các

giá trị cụ thể gọi tham số

giá trị (tham trị)

•Câu lệnh gọi thủ tục có dạng:

•<tên thủ tục>[(các tham số thực sự)];

•b Ví dụ thủ tục

(13)

•b Ví dụ thủ tục

1 Cách viết sử dụng thủ tục

• Ví dụ 2: Chương trình hốn đổi giá trị hai biến, cách dùng thủ tục Hoan_doi.

x y

TG

TG

TG

x y

TG

x y

TG := x (1)

x := y (2) y := TG (3)

•b Ví dụ thủ tục

(14)

1 program VD_thambien1;

2 uses crt;

3 var a, b: integer;

4 procedure Hoan_doi(var x,y: integer);

5 var TG: integer;

6 begin

TG:= x; x:= y; y:= TG; end;

7 begin

8 clrscr;

9 a:=5; b:=10;

10 writeln(a:6, b:6);

11 Hoan_doi(a,b);

12 writeln(a:6, b:6);

•b Ví dụ thủ tục

1 Cách viết sử dụng thủ tục

Tham số hình thức các tham số biến

(15)

program VD_thambien1; 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

•Trong lệnh gọi thủ tục, tham số hình thức thay tham số thực tương ứng tên các biến

chứa liệu gọi

các tham số biến (tham biến)

•Để phân biệt tham biến tham trị, Pascal sử dụng từ khóa var để khai báo cho tham số biến

•b Ví dụ thủ tục

(16)

program VD_thambien2; uses crt;

var a, b: integer;

procedure Hoan_doi(x: integer; var 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);

•b Ví dụ thủ tục

1 Cách viết sử dụng thủ tục

Khác khai báo tham số hình thức

Khác kết sau khi thực thủ tục

Điểm khác giữa tham trị

tham bieán ?

•* Tham số biến dùng để ghi lại •dữ liệu kết việc thực hiện •thủ tục.

•* Tham số giá trị để đưa liệu •vào cho thủ tục bắt đầu thực hiện

•b Ví dụ thủ tục

(17)

1 program VD_thambien2;

2 uses crt;

3 var a, b: integer;

4 procedure Hoan_doi(x: integer; var y: integer);

5 var TG: integer;

6 begin

TG:= x; x:= y; y:= TG; end;

7 begin

8 clrscr;

9 a:=5; b:=10;

10 writeln(a:6, b:6);

11 Hoan_doi(a,b);

12 writeln(a:6, b:6);

13 readln;

14.end

•b Ví dụ thủ tục

1 Cách viết sử dụng thủ tục

procedure Hoan_doi(var x: integer; y: integer);

Kết nhận (trên màn hình)

(18)

* Chú ý:

• - Khi khai báo tham số hình thức, có kiểu khác tham số cách

bằng dấu chấm phẩy, có kiểu cách nhau dấu phẩy.

• Ví dụ:

• procedure CTC(x, y, z: integer; r: real);

•b Ví dụ thủ tục

1 Cách viết sử dụng thủ tục

•b Ví dụ thủ tục

(19)

* Chú ý:

• - Khi khai báo liệu cho tham số hình thức chỉ dùng tên kiểu Tên kiểu tên chuẩn hoặc tên người lập trình đặt.

• Ví duï:

Khai báo hợp lệ:

procedure Alpha(N: integer; var s: string);

•b Ví dụ thủ tục

1 Cách viết sử dụng thủ tục

•b Ví dụ thủ tục

(20)

-Khai báo không hợp lệ:

procedure Delta(M: array[1 10] of byte; var X: string[25]);

-Khai báo hợp lệ:

type mang = array[1 10] of byte; xau = string[25]; procedure Delta(M: mang; var X: xau);

•b Ví dụ thủ tục

(21)

1 Từ khóa để khai báo thủ tục là:

A Program B Procedure C Function D Processor

2 Muốn khai báo x, y tham số giá trị (x, y thuộc kiểu integer) thủ tục có tên “ABC” khai báo sau đúng?

A Procedure ABC(x, y: integer);

B Procedure ABC(var x, y: integer);

C Procedure ABC(x: integer; var y: integer); D Procedure ABC(var x: integer; y: integer);

(22)

3 Muốn khai báo x tham số giá trị, y z tham số biến (x, y, z thuộc kiểu integer) thủ tục có tên “CTC” khai báo sau đúng?

A Procedure CTC(x, y, z: integer);

B Procedure CTC(var x, y, z: integer);

C Procedure CTC(var x:integer; y, z: integer); D Procedure CTC(x: integer; var y, z: integer);

(23)

4 Cho chương trình sau:

var a, b, c: integer;

procedure Hoan_doi(var a, b: integer); var TG: integer;

begin TG:= a; a:= b; b:= TG; end; begin clrscr;

a:= 10; b:= 11; c:= 12; Hoan_doi(b,c);

Hoan_doi(a,b); Hoan_doi(b,c);

writeln(a, ‘ ’, b ‘ ’, c);

Kết nhận (trên hình) sau thực chương trình là:

A 10 11 12 B 11 10 12 C 12 11 10 D 12 10 11

(24)

Tiết học đến hết.

Xin chúc quý Thầy (Cô)

cùng em học sinh

Vui - Khoẻ Thành công.

Ngày đăng: 14/05/2021, 01:57

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan