Giao diện mới của VnDoc Pro: Dễ sử dụng hơn - chỉ tập trung vào lớp bạn quan tâm. Vui lòng chọn lớp mà bạn quan tâm: Lưu và trải nghiệm

Giải bài tập Tin học 11 bài 18

Tin học 11 - Ví dụ về cách viết và sử dụng chương trình con

VnDoc xin giới thiệu tới bạn đọc tài liệu Giải bài tập Tin học 11 bài 18, nội dung tài liệu sẽ là nguồn thông tin hữu ích để giúp các bạn học học tốt môn Tin học 11 một cách hiệu quả nhất. Mời các bạn học sinh và thầy cô cùng tham khảo chi tiết tại đây nhé.

Giải bài tập Tin học 11 bài 18 Ví dụ về cách viết và sử dụng chương trình con vừa được VnDoc.com sưu tập và xin gửi tới bạn đọc cùng tham khảo. Bài viết được tổng hợp nội dung về bài 18 môn Tin học lớp 11 ví dụ về cách viết và sử dụng chương trình con. Qua bài viết bạn đọc có thể luyện tập được cách viết và sử dụng thủ tục, cấu trúc của thủ tục, cách viết và sử dụng hàm... Mời các bạn cùng tham khảo chi tiết và tải về tại đây.

Giải bài tập Tin học 11 Ví dụ về cách viết và sử dụng chương trình con

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

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

procedure <tên th tc> [(danh sách tham số)];
[<phn khai báo>]
Begin
	[<dãy các lh>]
End;

Phần đầu thủ tục: Gồm tên dành riêng procedure, tiếp theo là tên thủ tục. Danh sách tham số có thể có hoặc không có.

Phần khai báo: Dùng để xác định các hằng, kiểu, biến và cũng có thể xác định các chương trình con khác được sử dụng trong thủ tục.

Dãy câu lệnh: Đực viết giữa cặp tên dành riêng begin và end tạo thành thân của thủ tục.

b) Ví dụ về thủ tục

Ví dụ 1: Viết thủ tục vẽ hình chữ nhật có dạng như sau

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

Chiều dài là 7 chiều rộng là 3.

Procedure Ve_Hcn;
Begin
Writeln(‘*******’);
Writeln(‘* *’);
Writeln(‘*******’);
End;

Để sử dụng thủ tục này ta gọi Ve_Hcn;

Ví dụ 2: Viết thủ tục vẽ hình chữ nhật với chiều dài và chiều rộng được tùy chỉnh.

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(‘*’);
End;

Để sử dụng thủ tục này ta gọi Ve_Hcn(a,b);

Khi gọi thủ tục, các tham số hình thức được thay bằng các tham số thực sự tương ứng là các giá trị cụ thể gọi là các tham số giá trị (tham trị) (Ví dụ: chdai, chrong được gọi là tham trị).

Khi gọi thủ tục Ve_Hcn(a,b) tham số chdai được thay bằng giá trị hiện thời của biến a, tham số chrong được thay bởi giá trị hiện thời của biến b. Trong lệnh gọi thủ tục, các tham số hình thức được thay bằng các tham số thực sự tương ứng là tên biến chứa dữ liệu ra được gọi là tham số biến (hay tham biến).

Để phân biệt tham biến và tham trị, Pascal sử dụng từ khóa var để khai báo những tham biến.

Ví dụ :

Nếu không sử dụng tham biến:

program dientro;
uses crt;
var 
	a,b:integer;
procedure hoandoi(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);
	hoandoi(a,b);
	writeln(a:6,b:6);
	readkey;
end.

Kết quả:

Hai số không hề hoán đổi cho nhau

Sử dụng tham biến:

program dientro;
uses crt;
var 
	a,b:integer;
procedure hoandoi(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);
	hoandoi(a,b);
	writeln(a:6,b:6);
	readkey;
end.

Kết quả:

Khi nào dùng tham biến: Khi ta muốn thay đổi giá trị các tham số truyền vào thì tra sẽ sử dụng tham biến.

2. Cách viết và sử dụng hàm

Điểm khác nhau cơ bản giữa thủ tục và hàm là việc thực hiện luôn trả về giá trị kết quả thuộc kiểu xác định và giá trị đó được gán cho tên hàm.

Hàm có cấu trúc tương tự như thủ tục, tuy nhiên chỉ khác nhau phần đầu.

Function <tên hàm>[<danh sách tham số>]:<kiu d liu>;

Trong đó kiểu dữ liệu chỉ có thể là integer, real, char, Boolean, string.

Khác với thủ tục, trong thân hàm phải có lệnh gán giá trị cho tên hàm:

<tên hàm>:=<biểu thức>;

Ví dụ 1:

Viết chưng tình thực hiện việc rút gọn một phân số, trong đó có sử dụng hàm tính ước chung lớn nhất của hai số nguyên.

program rutgon;
uses crt;
var 
	TuSo,MauSo,a:integer;
function UCLN(x,y:integer):integer;
	var sodu:integer;
begin
	while y<>0 do
	begin
		sodu:=x mod y;
		x:=y;
		y:=sodu;
	end;
	UCLN:=x;
end;
begin
	clrscr;
	write('Nhap vao tu so va mau so ');
	readln(TuSo,MauSo);
	a:=UCLN(TuSo,MauSo);
	if a>1 then
	begin
		TuSo:=TuSo div a;
		MauSo:=MauSo div a;
	end;
	writeln(TuSo:5,MauSo:5);
	readkey;
end.

Kết quả:

Trong chương trình này, các biến TuSo, MauSo và a là các biến toàn cục, còn biến sodu là biến cục bộ.

Sử dụng hàm

Việc sử dụng hàm tương tự với việc sử dụng các hàm chuẩn, khi viết lệnh gọi gồm tên hàm và tham số thực sự tương ứng với các tham số hình thức.

Lệnh gọi hàm có thể tham gia vào biểu thức như một toán hạng và thậm chí là tham số của lời gọi hàm, thủ tục khác.

Ví dụ:

A:=6*UCLN(TuSo,MauSo)+1;

Ví dụ 2. Viết chương trình tìm giá trị nhỏ nhất trong ba số có sử dụng hàm tìm số nhỏ nhất trong hai số.

Phân tích:

Do chỉ được sử dụng hàm tìm giá trị nhỏ nhất trong hai số. Nên ta sẽ làm như sau:

Đầu tiên sẽ tìm giá trị nhỏ nhất trong 2 số, Sau đó dùng kết quả này làm tham số cho hàm tìm giá trị nhỏ nhất với giá trị này và số còn lại.

program vdu2;
uses crt;
var a,b,c:real;
function Min(a,b:real):real;
begin
	if a<b
	then
	Min:=a
	else
	Min:=b;
end;
begin
	write('Nhap vao 3 so ');
	readln(a,b,c);
	writeln('So nho nhat trong ba so la ', Min(Min(a,b),c));
	readln
end.

----------------------------

Trên đây VnDoc.com vừa giới thiệu tới các bạn bài viết Giải bài tập Tin học 11 bài 18 Ví dụ về cách viết và sử dụng chương trình con, mong rằng qua bài viết này các bạn có thể học tập tốt hơn môn Tin học lớp 11. Mời các bạn cùng tham khảo thêm kiến thức các môn Toán 11, Ngữ văn 11, Tiếng Anh 11, đề thi học kì 1 lớp 11, đề thi học kì 2 lớp 11...

Mời bạn đọc cùng tham gia nhóm Tài liệu học tập lớp 11 để có thêm tài liệu học tập nhé

Để có kết quả cao hơn trong học tập, VnDoc xin giới thiệu tới các bạn học sinh tài liệu Sinh học lớp 11, Vật lý lớp 11, Hóa học lớp 11, Giải bài tập Toán 11 mà VnDoc tổng hợp và đăng tải.

Đánh giá bài viết
1 343
Sắp xếp theo

    Giải bài tập Tin học 11

    Xem thêm