Thứ Hai, 3 tháng 3, 2014

Bài 17 - Chương trình con và phân loại



Assign
Reset
Rewrite
Read
Nh¸y chuét chän ®¸p ¸n
1. Trong các thủ tục sau, thủ tục nào cho phép mở tệp để đọc
dữ liệu?
KIỂM TRA BÀI CŨ

KIỂM TRA BÀI CŨ
2. Hãy chọn thứ tự thực hiện các thao tác đọc dữ liệu từ tệp?
(A) Đóng tệp (C) Gán tên tệp với biến tệp
(B) Mở tệp (D) Đọc dữ liệu từ tệp
(B) - (C) - (D) - (A)
(C) - (D) - (B) - (A)
(B) - (D) - (C) - (A)
(C) - (B) - (D) - (A)
Nh¸y chuét chän ®¸p ¸n

KIỂM TRA BÀI CŨ
3. Điền lần lượt các từ thích hợp vào chổ trống?
Program ghi_tep_van_ban;
Var F : …… ;
Begin
……(F,’vanban.txt’);
……(F);
writeln(F,’Tap the hoc sinh lop 11C’);
writeln(F,’kinh chao quy thay co!’);
……(F);
End.
String - Rewrite - Assign -
Close
Text - Rewrite - Assign -
Close
Text - Assign - Rewrite -
Close
Text - Assign - Reset - Close
Nh¸y chuét chän ®¸p ¸n


 Trong hoạt động dạy và học của một đơn vị trường học.
Nếu chỉ có một người hiệu trưởng giảng dạy thì có thể đảm
bảo được việc thực hiện giảng dạy hay không?
Hiệu Trưởng
Phó Hiệu Trưởng
Tổ chuyên môn Tổ chuyên môn
Giáo viên bộ mônGiáo viên bộ môn Giáo viên bộ mônGiáo viên bộ môn
… …
… …

 Trong giải bài toán máy tính cũng vậy, đôi lúc chúng ta
cần phải giải một số bài toán lớn, phức tạp → chúng ta cần
phải giải quyết như thế nào?
Bài toán
Bài toán nhỏ Bài toán nhỏ Bài toán nhỏ
Bài toán nhỏ Bài toán nhỏ Bài toán nhỏ Bài toán nhỏ
Môdul
CTC
Môdul
CTC
Môdul
CTC
Môdul
CTC
Môdul
CTC
Môdul
CTC
Modul
CTC
Chương trình


1. Khái niệm chương trình con :
Xét bài toán tính tổng bốn lũy thừa : Tluythua = a
n
+ b
m
+ c
p
+ d
q
Giả sử em là nhóm trưởng của một
nhóm 4 người. Em hãy nói cách tổ
chức nhóm mình để đưa ra kết quả
bài toán trên nhanh nhất?
a
n
b
m
c
p
d
q
Tluythua

Program tinh_tong;
Var Tluythua, luythua1, luythua2, luythua3, luythua4 : 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, m, n, p, q : ’);
readln(a, b, c, d, m, n, p, 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;
Tluythua := Luythua1 + Luythua2 + Luythua3 + Luythua4;
writeln(’Tong luy thua = ’ , Tluythua:8:4);
Readln;
End.
Tich := 1.0;
For i := 1 To k Do
Tich := Tich * x;
Luythua(x,k)
Luythua(a,n)

Chương trình con là một dãy lệnh
mô tả một số thao tác nhất định và có
thể được thực hiện (được gọi) từ nhiều
vị trí trong chương trình.
+ Luythua(b,m) + Luythua(c,p) + Luythua(d,q);
Tluythua :=

 Lợi ích của việc sử dụng chương trình con

Tránh được việc phải viết lặp đi lặp lại cùng một dãy lệnh
ví dụ : bài TLuythua
 Hỗ trợ việc thực hiện các chương trình lớn
ví dụ : quản lí điểm học sinh, quản lí nhân viên, …

Phục vụ cho quá trình trừu tượng hoá
ví dụ : việc sử dụng các hàm toán học

Mở rộng khả năng ngôn ngữ
ví dụ : các thủ tục write, readln, …

Thuận tiện cho phát triển, nâng cấp chương trình
ví dụ : việc sửa đổi cách tính điểm trong chương trình quản lí điểm
Bài toán quản lí điểm học sinh
Sqr(x)? Sin(x)? Sqrt(x)?
Trong NNLT Pascal, làm cách nào để
nhập giá trị từ bàn phím vào cho biến?
Em hãy cho biết cách tính điểm
trung bình học kì môn Tin học?

2. Phân loại và cấu trúc của chương trình con :
a. Phân loại :
 Hàm (Function) : là chương 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ó.
ví dụ : các hàm : sqr(x) ; sqrt(x) ; length(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.
ví dụ : các thủ tục : writeln ; readln ; delete ; …
Em hãy cho biết ý nghĩa và
kết quả của Sqr(5)?
Em hãy cho biết ý nghĩa của
Readln(a)?

b. Cấu trúc chương trình con :
Chương trình con
<phần đầu>
[<phần khai báo>]
<phần thân>
Chương trình chính
[<phần khai báo>]
<phần thân>
 Phần khai báo : là khai báo biến cho dữ liệu vào /ra,
các hằng, các biến dùng trong chương trình con
 Phần thân : là dãy câu lệnh cần thực hiện trong
chương trình con
Em hãy nêu cấu trúc
chương trình chính?

CỦNG CỐ - DẶN DÒ
1. Em hãy cho biết chương trình con là gì? Có mấy loại
chương trình con?
2. Trình bày cấu trúc chương trình con? Cho biết sự giống
và khác về cấu trúc của CTC và chương trình?
3. Khi sử dụng CTC trong xây dựng chương trình, ta có
được những thuận lợi gì?
 Xem trước các khái niệm : tham số hình thức, tham số thực
sự, biến cục bộ, biến toàn cục và lời gọi chương trinh con
(SGK – trang 94, 95)

Không có nhận xét nào:

Đăng nhận xét