VD1: Lập ch ơng trình tính tổng luỹ thừa S = am +bn 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
Trang 1Bµi 20
Gi¸o ¸n ®iÖn tö tin häc líp 11
Trang 2VD1: Lập ch ơng trình tính tổng luỹ thừa S = am +bn
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
Trang 3Program 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.
Trang 4• 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ù
Trang 5Ví 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)
Trang 6C¸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;
Trang 7Program 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
Trang 8Program 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
Trang 9H·y nhí!
BiÕn:
Tham sè
- Khai b¸o trong ch ¬ng tr×nh chÝnh lµ biÕn
- 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è
- BiÕn chøa trong lêi gäi CTC ë ch ¬ng tr×nh chÝnh lµ c¸c tham sè thùc sù.