Slide 1 GV PHẠM NGỌC TÂY NỘI DUNG 1 Khái niệm CTC a Bài toán TLuythua = an + bm + cp + dq 1 Khái niệm chương trình con Hoạt động 1 a Bài toán tính tổng 4 lũy thừa TLuythua = an + bm + cp + dqKết[.]
Trang 21 Khái niệm CTC:
a.Bài toán:
TLuythua =
a n + b m + c p + d q
Hoạt động 1:
a.Bài toán: tính tổng 4 lũy thừa:
TLuythua = a n + b m + c p + d q
Kết quả:
Đoạn chương trình tính an
Luythua1:=1.0;
For i:=1 to n Do Luythua1:=luythua1*a;
Đoạn chương trình tính bm
Luythua2:=1.0;
For i:=1 to m Do Luythua2:=luythua2*b;
Đoạn chương trình tính cp
Luythua3:=1.0;
For i:=1 to p Do Luythua3:=luythua3*c;
Đoạn chương trình tính dq
Luythua4:=1.0;
For i:=1 to q Do Luythua4:=luythua4*d;
Trang 3a n + b m + c p + d q
Luythua1:=1.0;
For i:=1 to n Do Luythua1:=luythua1*a;
Luythua2:=1.0;
For i:=1 to m Do Luythua2:=luythua2*b;
Luythua3:=1.0;
For i:=1 to p Do Luythua3:=luythua3*c;
Luythua4:=1.0;
For i:=1 to q Do Luythua4:=luythua4*d;
Chương trình:
Program Tinh_tong;
Var TLuyhua, Luythua1, Lthua2,Lthua3,Lthua4:real;
a,b,c,d:real;
I,n,m,p,q:Integer;
Begin
Write(‘Hay nhap du lieu theo thu tu a,b,c,d,n,m,p,q:’); Readln(a,b,c,d,n,m,p,q);
TLuyhua:=Luythua1+ Luythua2+ Luythua3+ Luythua4;
Writeln(‘Tong Luy thua =‘, TLuythua:8:4);
End.
HĐ2:
Hãy nhận xét về cách viết chương trình trên?
LT:=1.0;
for i:=1 to k do
LT:=LT * x;
Function Luythua (x,k:integer):integer;
Var i, LT:integer;
begin LT:=0;
for i:=1 to k do
LT:=LT * x;
Luythua:=LT;
End;
LT:=1.0;
for i:=1 to k do
LT:=LT * x;
Trang 41 Khái niệm CTC:
a.Bài toán:
TLuythua =
a n + b m + c p + d q
1 Khái niệm chương trình con:
Hoạt động 3:
a.Bài toán:tính tổng 4 lũy thừa:
TLuythua = a n + b m + c p + d q
Nhận xét:
- Có thể chia chương trình lớn (chương trình chính) thành các khối nhỏ (Mođun) Mỗi khối bào gồn những lệnh để giải một bài toán con nào đó => Mỗi khối sẽ được xây dụng thành một chương trình con
Kết luận 1:
Chương trình chính được xây dựng từ các chương trình con và chương trình con cũng có thể được xây dựng từ những chương trình con khác Cách lập trình trên gọi là phương pháp lập trình có cấu trúc và chương trình xây dựng dược gọi là chương trình có cấu trúc.
b Định nghĩa chương trình con:
Chương trình con là dãy các lệnh mô tả một số thao tác nhất định và có thể được thực hiện từ nhiều vị trí trong chương trình
b Định nghĩa CTC:
Trang 52 Phân loại và cấu
trúc của CTC:
a.Phân loại:
- Hàm (Function): là chưong trình con thực hiện một số thao
tác nào đó và trả về một giá trị qua tên của nó.
HĐ4:HS xem SGK Tr 94 hãy cho biết vài hàm chuẩn đã học
Sin(x): nhận giá trị thực x và trả về giá trị sinx Sqrt(x): nhận giá trị x và trả về giá trị căn bậc hai của x length(x): nhận xâu x và trả về độ dài của xâu x…
- Thủ tục(Procedure): là chương trình con thực hiện các thao tác nhất định nhưng không trả về giá trị nào qua tên của nó.
HĐ5: HS xem SGK Tr 94 hãy cho biết vài thủ tục chuẩn đã học
- Thủ tục vào / ra : Readln / Writeln
- Thủ tục xử lý xâu: Delete, Insert
b Định nghĩa CTC:
Trang 6a.Bài toán:
TLuythua =
a n + b m + c p + d q
2 Phân loại và cấu
trúc của CTC:
a.Phân loại:
b Định nghĩa CTC:
b.Cấu trúc CTC:
2 Phân loại và cấu trúc của chương trình con:
b.Cấu trúc chương trình con (CTC):
<Phần đầu> [<phần khai báo>] <Phần thân>
………Là dãy các câu lệnh thực hiện để từ những dữ liệu vào ta nhận dữ liệu ra hay kết quả mong muốn
………Dùng để khai báo tên CTC, nếu là hàm phải khai báo kiểu dữ liệu cho giá trị trả về của hàm
………Khai báo biến cho dữ liệu vào ra, các hằng và biến dùng trong chương trình con
<Phần đầu>
[<phần khai báo>]
<Phần thân>
3
1
2
Dựa vào SGK_Tr 94 hãy ghép cặp sao cho đúng với ý nghĩa của từng Thành phần của CTC
Cấu trúc chương trình con
Trang 7a n + b m + c p + d q
2 Phân loại và cấu
trúc của CTC:
a.Phân loại:
b Định nghĩa CTC:
b.Cấu trúc CTC:
<Phần đầu>
Function Luythua(x :real; k:integer):real;
[<phần khai báo>]
Var i:Integer;
<Phần thân>
Begin
Tich:=1.0;
For i:=1 to k Do
Tich:=tich*x;
Luythua:=tich;
End;
Biến i được gọi là biến
cục bộ,
Biến x, y được gọi là
tham số hình thức,
Các biến của chương
trình chính được gọi là
biến toàn cục, nó có
tác dụng trong toàn bộ chương trình
Trang 8a.Bài toán:
TLuythua =
a n + b m + c p + d q
2 Phân loại và cấu
trúc của CTC:
a.Phân loại:
b Định nghĩa CTC:
b.Cấu trúc CTC:
2 Phân loại và cấu trúc của chương trình con:
c.Thực hiện CTC:
c.Thực hiện CTC:
… <Tên chương trình con> ( <thamsố thực sự> )…
Để thực hiện CTC ta cần phải có lệnh gọi nó tương tự lệnh gọi hàm hay thủ tục chuẩn bao gồm tên chương trình và tham
số (nếu có)
Ví du
Luythua(x, y) x, y là tham số hình thức
Tên chương trình con
2, 3 là tham số thực sự
Chú ý:
- Các tham số hình thức sẽ nhận giá trị từ các tham số thực sự.
- Số lương tham số thực sự phải bằng với số lượng của tham số hình thức trong lệnh gọi chương trình con
- Tránh việc lặp đi lặp lại cùng một dãy lệnh trong chương trình
- Hỗ trợ việc thực hiện các chương trình lớn.
- Phục vụ cho quá trình trừu tượng hoá.
- Mở rộng khả năng ngôn ngữ
- Thuận lợi cho phát triển, nâng cấp chương trình
Lợi ích của CTC
Trang 9 Chương trình con là một dãy lệnh
giải quyết một bài toán con cụ thể.
Phân loại chương trình con:
+ Hàm + Thủ tục
<phần đầu>
[<phần khai báo>]
< phần thân>
<phần đầu>
[<phần khai báo>]
< phần thân>