Banner-baigiang-1090_logo1
Banner-baigiang-1090_logo2

Tìm kiếm theo tiêu đề

Tìm kiếm Google

Quảng cáo

Hướng dẫn sử dụng thư viện

Hỗ trợ kĩ thuật

Liên hệ quảng cáo

  • (024) 66 745 632
  • 036 286 0000
  • contact@bachkim.vn

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

Wait
  • Begin_button
  • Prev_button
  • Play_button
  • Stop_button
  • Next_button
  • End_button
  • 0 / 0
  • Loading_status
Tham khảo cùng nội dung: Bài giảng, Giáo án, E-learning, Bài mẫu, Sách giáo khoa, ...
Nhấn vào đây để tải về
Báo tài liệu có sai sót
Nhắn tin cho tác giả
(Tài liệu chưa được thẩm định)
Nguồn:
Người gửi: nguyễn Thị Hương
Ngày gửi: 17h:24' 05-03-2015
Dung lượng: 1.1 MB
Số lượt tải: 1019
Số lượt thích: 0 người
Bài 18
ví dụ về cách viết và
sử dụng chương trình con
Ví dụ 1: Lập chương trình vẽ các hình chữ nhật bằng dấu * có kích thước khác nhau.
Theo bạn để viết chương trình cho ví dụ trên ta nên dùng loại chương trình con nào?
Cách2: Dùng chương trình con thủ tục Ve_HCN(dai,rong) để vẽ một hình chữ nhật.
Trong chương trình chính, dùng lời gọi thủ tục và truyền các tham số với giá trị khác nhau để vẽ các hình chữ nhật khác.
Ví dụ: Ve_HCN(25,20); Ve_HCN(3,7)
Cách 1: Sử dụng nhiều lần các câu lệnh:
Writeln(`* * * * * * *`);
Writeln(`* *`);
Writeln(`* * * * * * *`);
1. Cách viết và sử dụng thủ tục:
Cấu trúc của thủ tục:
Procedure [()];
[< Phần khai báo >]
Begin
[]
End;
Các em hãy viết một thủ tục Ve_HCN bằng dấu * với chiều dài, rộng bất kì!
**********************************
* *
* *
* *
**********************************
Dài
Rộng
Vẽ cạnh trên của HCN
Vẽ hai cạnh bên
Vẽ cạnh dưới
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;
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ố tại nơi gọi:Tham số thực.
Tham số tại nơi được gọi: Tham số hình thức.
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.
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 biến
Biến toàn cục
2. Cách viết và sử dụng hàm:
Function [()] :kiểu của hàm;
[< Phần khai báo >]
Begin
[]
tênhàm := giátrị;
End;
Lưu ý khi sử dụng hàm:
Việc sử dụng hàm tương tự như các hàm chuẩn.
Kết quả trả về qua tên hàm chỉ có thể thuộc các kiểu dữ liệu chuẩn: integer, real, boolean, char, string.
Vì kết quả trả về đã gán cho tên hàm nên thông thường các tham số trong hàm là các tham số giá trị.
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.
VD: Lập chương trình tính tổng luỹ thừa S = am +bn +cp +dq
Viết chương trình con dạng tổng quát Luythua = xk
Trong đó: Luythua, x kiểu thực, k kiểu nguyên.
Khi tính luỹ thừa của các số hạng trong tổng trên ta chỉ cần gọi tên chương trình con Luythua và thay thế (x,k) bằng các giá trị tương ứng. Ví dụ như: Luythua(a,m). luythua(b,n), luythua(c,p),luythua(d,q).
* INPUT : Các cơ số a,b,c,d và các số mũ lần lượt n,m,p,q
* OUTPUT : S
Program tong_luy_thua;
Uses crt;
Var a,b,c,d,S : real;
n,m,p,q :integer;
Function luythua(x: real,k:integer): real;
Var j: integer; Lt:Real;
begin
Lt:=1;
For j:=1 to k do Lt:=Lt*x;
Luythua:=Lt;
end;
BEGIN
Write(` Nhap vao cac co so a,b,c,d `); readln(a,b,c,d);
write(` Nhap vao cac so mu m,n,p,q: `); readln(n,m,p,q);
s:= luythua(a,m)+luythua(b,n)+luythua(c,p)+luythua(d,q);
Writeln(` Tong luy thua =`, S:7:2);
Readln;
END.
Nhận xét
Biến được khai báo ở trong CTC chỉ có tác dụng trong CTC gọi là biến cục bộ.
Biến khai báo ở CT chính có tác dụng ở mọi chương trình gọi là biến toàn cục.
Biến được khai báo cho dữ liệu vào/ra ở CTC gọi là tham số hình thức.
Biến chứa trong lời gọi CTC ở chương trình chính là tham số thực sự.
VD: Lập chương trình tối giản phân số
Ví dụ: nhập 6/10 => ra 3/5
* INPUT : Nhập phân số a/b;
* OUTPUT : Phân số c/d - Trong đó: c = a/ƯCLN(a,b);
d = b/ƯCLN(a,b);
? Viết chương trình con thực hiện tìm ƯCLN(a,b) và gọi nó khi tính c,d trong chương trình chính.
Program tgps;
Uses crt;
Var tu,mau,c,d : integer;
Function UCLN( a,b :integer) : integer;
Begin
While a<> b do
if a>b then a := a-b else b:=b-a;
UCLN := a;
end;
BEGIN
Write(` Nhap vao tu so và mau so:`); readln(tu,mau);
C := tu div UCLN(tu,mau) ; d := mau div UCLN(tu,mau);
Writeln(` Phan so toi gian = `, c, ` / `, d);
Readln;
END.
Write(`Nhap vao tu so va mau so:`);
C := 6 div
d := 10 div
UCLN(6,10)
UCLN(6,10);
Writeln(` Phan so toi gian = `, 3, ` / `, 5);
Readln;
END.
BEGIN
Readln(tu,mau);
USCLN=2;
USCLN=2;


Nhap vao tu so va mau so:
6 10
Phan so toi gian = 3/5
Hãy nhớ!
? Biến:
? Tham số
- Khai báo trong chương trình chính là biến toàn cục.
- Khai báo trong chương trình con là biến cục bộ.
- Biến khai báo cho dữ liệu vào ra trong chương trình con gọi là tham số hình thức.
- Biến chứa trong lời gọi CTC ở chương trình chính là các tham số thực sự.
No_avatar

Dạ tại sao iphone không cho phần mền violet về đươc ạ . Làm sao e có thể tải được ạ .

No_avatar

Em muốn được tải violet về máy để học tham khảo ạ

No_avatarf

toi cung da thu , tren iphone khong xem cung khong tai ve duoc

Avatar

Chỉ cần đăng ký 1 tài khoản (có nick name, địa chỉ e-mail, và ....miễn phí) vào BẠCH KIM là a lê hấp! Tải xuống máy tính thoải mái; không dùng i-Phone có sao đâu!

Avatar
http://violet.vn/dvnghiem/present/show/entry_id/5118645
Avatar

Cảm ơn Thầy/Cô nhé

 

Avatar

https://thpt-dongxoai-binhphuoc.violet.vn/

Mời quý thầy cô gia nhập website thư viện Ebook.

Thư viện sẽ cung cấp các loại sách dạng Ebook để phục vụ cho quý thầy cô và các em học sinh đọc online. Rất mong nhận được sự góp ý và đóng góp tài liệu của quý thầy cô để trang web ngày càng đa dạng và phong phú hơn. Cảm ơn quý thầy cô!

 

 
Gửi ý kiến