Thực hiện các thao tác nhất định, không trả về giá trị nào qua tên của nó, tham gia vào chương trình như một câu lệnh. Ví dụ:[r]
(1)q p
n
m b c d
a luythua
_
T
Yêu cầu:
Hãy viết chương trình cho phép nhập vào từ bàn phím giá trị thực a, b, c, d giá trị nguyên dương m, n, p, q Tính in hình giá trị T_luythua
Cho biểu thức sau:
Cấu trúc chương trình gồm phần sau
1 Nhập liệu vào a, b, c, d, m, n, p, q
2 Tính a luỹ thừa n
3 Tính b luỹ thừa m
(2)2
begin
writeln('Nhap cac co so a, b, c, d : ');
readln(a,b,c,d);
writeln('Nhap cac so mu m, n, p, q : ');
readln(m,n,p,q); Luythua1:=luythua(a,m); Luythua2:=luythua(b,n); Luythua3:=luythua(c,p); Luythua4:=luythua(d,q); Luythua:=Luythua1+Luythua2+Luythua3+Luythua4;
{ Tinh bieu thuc T_luythua}
writeln('Tong: ',Luythua:8:2);
readln;
end. begin
writeln('Nhap cac co so a, b, c, d : ');
readln(a,b,c,d);
writeln('Nhap cac so mu m, n, p, q : ');
readln(m,n,p,q); Luythua1:=1;
for i:=1 to m do
Luythua1:=Luythua1*a; Luythua2:=1;
for i:=1 to n do
Luythua2:=Luythua2*b; Luythua3:=1;
for i:=1 to p do
Luythua3:=Luythua3*c; Luythua4:=1;
for i:=1 to q do
Luythua4:=Luythua4*d;
Luythua:=Luythua1+Luythua2+Luythua3+Luythua4 ;
{ Tinh bieu thuc T_luythua}
writeln('Tong: ',Luythua:8:2);
readln;
end.
Thân chương trình
A A
B B
C C
(3)(4)4
Ưu điểm ct2 so với Ct1
• Ngắn gọn- câu lệnh giống bản chất thay câu lệnh cùng cấu trúc
(5)Chương VI
CHƯƠNG TRÌNH CON VÀ LẬP TRÌNH CĨ CẤU TRÚC
Khái niệm chương trình con Chương trình con: cấu trúc phân loại
Tham số hình thức tham số thực sự Biến cục bộ, biến toàn cục
Thư viện chương trình
(6)6 CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI
(7)KHÁI NIỆM CHƯƠNG TRÌNH CON
(8)8
Lợi ích chương trình con
• Tránh viết lặp lại dãy lệnh bản chất
• Hỗ trợ việc thực chương trình
• Phục vụ cho q trình trừu tượng hố • Mở rộng khả ngơn ngữ
• Thuận tiện cho phát triển, nâng cấp chương trình
Theo em, sử dụng chương trình
con lập trình có thể có lợi
(9)PHÂN LOẠI CHƯƠNG TRÌNH CON
Thực thao tác định, trả giá trị qua tên tham gia vào biểu thức
Ví dụ:
sin(x) nhận giá trị thực x trả giá trị thực sinx
Hàm xử lí chuỗi?
Thực thao tác định, không trả giá trị qua tên nó, tham gia vào chương trình câu lệnh
Ví dụ:
Các thủ tục vào chuẩn write, writeln, read, readln,
Các thủ tục xử lí chuỗi
Hàm (function) Thủ tục (procedure)
(10)10
Hết tiết 1
Khái niệm chương
trình
Phân loại chương
(11)begin
writeln('Nhap cac co so a, b, c, d : ');
readln(a,b,c,d);
writeln('Nhap cac so mu m, n, p, q : ');
readln(m,n,p,q); Luythua1:=luythua(a,m); Luythua2:=luythua(b,n); Luythua3:=luythua(c,p); Luythua4:=luythua(d,q); begin
writeln('Nhap cac co so a, b, c, d : ');
readln(a,b,c,d);
writeln('Nhap cac so mu m, n, p, q : ');
readln(m,n,p,q); Luythua1:=1;
for i:=1 to m do
Luythua1:=Luythua1*a; Luythua2:=1;
for i:=1 to n do
Luythua2:=Luythua2*b; Luythua3:=1;
for i:=1 to p do
Luythua3:=Luythua3*c; Luythua4:=1;
for i:=1 to q do
Luythua4:=Luythua4*d;
Thân chương trình Thân chương trình
Begin
TinhT_lt;
end
A A
B B
So sánh phần thân của hai chương trình và rút ưu điểm chương trình so với