Bài giảng số 20
Chia sẻ bởi Phạm Như Vui |
Ngày 10/05/2019 |
61
Chia sẻ tài liệu: Bài giảng số 20 thuộc Tin học 11
Nội dung tài liệu:
Bài 20
VD1: 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.
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 bộ.
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à các tham số thực sự.
Ví dụ 2: 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?
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á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
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 biến)
Tham số hình thức
Biến toàn cục
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ự.
VD1: 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.
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 bộ.
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à các tham số thực sự.
Ví dụ 2: 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?
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á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
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 biến)
Tham số hình thức
Biến toàn cục
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ự.
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...
Người chia sẻ: Phạm Như Vui
Dung lượng: |
Lượt tài: 0
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)