Tải bản đầy đủ (.doc) (18 trang)

bài 4: bài toán và thuật toán

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (193.78 KB, 18 trang )

Ngày giảng Lớp Sĩ số
Tiết 10: § 4. BÀI TOÁN VÀ THUẬT TOÁN(Tiết 1)
I . Mục tiêu:
1. Kiến thức: Biết khái niệm bài toán và thuật toán.
2. Kỹ năng: Xác định được hai thành phần cơ bản cấu thành một bài
toán là input và output.
3. Thái độ: Tích cực trong việc phát triển khả năng tư duy.
II . Chuẩn bị của giáo viên và học sinh.
1. Chuẩn bị của GV: SGK, SGV, giáo án.
2. Chuẩn bị của HS: học bài cũ, đọc trước bài mới.
III . Hoạt động dạy - học:
1. Ổn định tổ chức:
2. Kiểm tra bài cũ:
- Một máy tính chưa có phần mềm có thể hoạt động được không? Vì
sao?
3. Nội dung bài mới :
Hoạt động của GV và HS Nội dung
Hoạt động 1: Tìm hiểu khái
niệm bài toán
GV: Trong toán học ta nhắc
nhiều đến khái niệm “bài toán”
và ta hiểu đó là những việc mà
con người cần phải thực hiện
sao cho từ những thông tin đã
có phải đưa ra một kết quả nào
đó. Vậy bài toán trong tin học
có gì khác?
GV: Đưa ra ví dụ 1 và 2.
1. Khái niệm bài toán.
Ví dụ 1a: Bài toán Giải PT:
ax + b = 0 (với a≠0) (*)


Ta nói đây là một bài toán.
Bài toán này có các thành
phần:
- Input: các giá trị a, b.
- Output: tìm giá trị x thoả mãn
(*)
Ví dụ 1b: Bài toán: cho số
nguyên dương N và dãy A: a
1
,
a
2
,....,a
N
. Tìm giá trị lớn nhất
của dãy A
- Input: Số nguyên dương N và
dãy A.
- Output: Max(a
1
, a
2
,....,a
N
)
GV: Từ ví dụ 1a, ví dụ 1b em
hãy cho biết bài toán là gì? Và
cũng từ các ví dụ trên ta thấy
bài toán được cấu tạo bởi các
thành phần nào?

HS1: Trả lời câu hỏi.
HS2: Bổ sung.
GV: Kết luận.
GV: Đưa ra ví dụ 1, 2, 3, 4.
Yêu cầu HS đứng tại chỗ xác
định các thành phần của mỗi
bài toán.
HS: Đứng tại chỗ trả lời
GV: Tổng hợp, kết luận
HS: Ghi bài
Khái niệm: bài toán là việc nào đó ta muốn
máy tính thực hiện
Bài toán được cấu tạo bởi hai thành phần
cơ bản:
- Input (giả thiết): Các thông tin đã có;
- Output (kết luận): Các thông tin cần tìm
từ Input.
Ví dụ 1. Bài toán tìm ước chung lớn nhất
của hai số nguyên dương
Input: Hai số nguyên dương M và N;
Output: Ước chung lớn nhất của M và N.
Ví dụ 2. Bài toán tìm nghiệm của phương
trình bậc hai
Input: Các số thực a, b, c (a ≠ 0);
Output: Số thực x thoả mãn
ax
2
+ bx + c = 0.
ở đây, Output có thể là một hoặc hai số thực
hoặc câu trả lời không có số thực nào như

vậy.
Ví dụ 3. Bài toán kiểm tra tính nguyên tố
Input: Số nguyên dương N;
Output: "N là số nguyên tố" hoặc "N không
là số nguyên tố".
Ví dụ 4. Bài toán xếp loại học tập của một
lớp
Input: Bảng điểm của học sinh trong lớp;
Output: Bảng xếp loại học lực.
Hoạt động 2: Tìm hiểu khái
niệm thuật toán.
GV: Muốn máy tính đưa ra
được output từ input cần phải
có chương trình, muốn có
chương trình ta cần có thuật
toán. Vậy thuật toán là gì?
GV: Đưa ra ví dụ tìm ngiệm
của phương trình dạng ax + b =
0
HS: Đứng tại chỗ xác định
input và output.
GV: Qua ví dụ trên em hãy cho
biết thuật toán là gì?
HS: Trả lời câu hỏi
GV: Kết luận.
GV: (Yêu cầu) học sinh xác
định Input và Output và nêu ý
tưởng để giải bài toán
HS: Suy nghĩ trả lời
GV: Tổng hợp

2. Khái niệm thuật toán.
Ví dụ 1: Bài toán Giải PT:
ax + b = 0 (*)
Xây dựng thuật toán để giải bài toán trên.
* Bài toán này các thành phần:
1. Input: các gía trị a, b.
2. Output: tìm giá trị x thoả mãn (*)
* ý tưởng:
- Nếu a = 0 thì PT vô nghiệm.
- Nếu a ≠ 0 thì PT có nghiệm
x = - b/a
* Thuật toán:
Bước 1: Nhập các giá trị a, b.
Bước 2: Nếu a = 0 thì đưa ra thông báo PT
vô nghiệm rồi kết thúc.
Bước 3: Nếu a ≠ 0 thì đưa ra nghiệm x rồi
kết thúc.
Khái niệm: Thuật toán để giải một
bài toán là một dãy hữu hạn các thao
tác được sắp xếp theo một trình tự xác
định sao cho sau khi thực hiện dãy thao
tác ấy, từ Input của bài toán, ta nhận
được Output cần tìm.
Ví dụ: Tìm giá trị lớn nhất của một dãy
số nguyên
• Xác định bài toán
- Input: Số nguyên dương N và dãy N số
nguyên a
1
,..., a

N
.
- Output: Giá trị lớn nhất Max của dãy số.
• Ý tưởng: - Khởi tạo giá trị Max = a
1
.
- Lần lượt với i từ 2 đến N, so sánh giá trị
số hạng a
i
với giá trị Max, nếu a
i
> Max thì
Max nhận giá trị mới là a
i
.
IV . Củng cố:
- KN bài toán, thuật toán.
- Hai yếu tố cấu tạo nên bài toán là Input và Output
V . Bài về nhà:
- Học bài cũ.
- Xây dựng thuật toán để giải bài toán: Tìm giá trị lớn nhất của một
dãy số nguyên
- Trả lời các câu hỏi sau bài học.
Ngày giảng Lớp Sĩ số
Tiết 11: § 4. BÀI TOÁN VÀ THUẬT TOÁN(Tiết 2)
I . Mục tiêu:
1. Kiến thức:
- Hiểu cách biểu diễn thuật toán bằng sơ đồ khối và bằng liệt kê các
bước;
- Biết các tính chất của thuật toán.

2. Kỹ năng:
- Xây dựng được thuật toán giải một số bài toán đơn giản bằng sơ đồ
khối hoặc liệt kê các bước.
3. Thái độ:
- Rèn luyện khả năng tư duy khi giải quyết các vấn đề khoa học cũng
như trong cuộc sống
II . Chuẩn bị của giáo viên và học sinh.
1. Chuẩn bị của Giáo viên: SGK, SGV, giáo án.
2. Chuẩn bị của học sinh: học bài cũ, đọc trước bài mới.
III . Hoạt động dạy - học:
1. Ổn định tổ chức:
2. Kiểm tra bài cũ: Khái niệm bài toán? Khái niệm thuật toán?
3. Nội dung bài mới:
Hoạt động của GV và HS Nội dung
Hoạt động 1: Xây dựng thuật toán
giải bài toán tìm giá trị lớn nhất của
dãy số nguyên
GV: Hướng dẫn học sinh xây dựng
thuật toán để giải bài toán tìm giá trị
lớn nhất của một dãy số nguyên
• Thuật toán. Thuật toán giải bài toán này có
thể được mô tả theo cách liệt kê như sau:
Bước 1. Nhập N và dãy a
1
,..., a
N
;
Bước 2. Max ← a
1
, i ← 2;

Bước 3. Nếu i > N thì đưa ra giá trị Max rồi
HS: Nghe và xây dựng thuật toán
GV: Gọi học sinh lên bảng viết
HS: Viết thuật toán
GV: Nhận xét, bổ sung (nếu có) .
GV: Đưa ra ví dụ
Dưới đây là ví dụ mô phỏng các
bước thực hiện thuật toán trên với N
= 11 và dãy A: 5, 1, 4, 7, 6, 3, 15
GV: Em hãy nhìn vào thuật toán
dưới dạng sơ đồ khối và hãy cho biết
thuật toán được diễn tả dưới dạng sơ
đồ khối với các quy định thế nào?
HS: Quan sát thuật toán.
Đọc sách giáo khoa.
Trả lời câu hỏi.
GV: Đưa ra kết luận.
Hoạt động 2: Tìm hiểu các tính chất
của thuật toán
GV: Qua hai ví dụ trên em hãy cho
biết thuật toán có những tính chất
nào?
HS: trả lời câu hỏi.
kết thúc;
Bước 4.
4.1. Nếu a
i
> Max thì Max ← a
i
;

4.2. i ← i + 1 rồi quay lại bước 3;
* Sơ đồ khối.
• Hình thoi thể hiện thao tác so sánh;
• Hình chữ nhật thể hiện các phép tính
toán;
• Các mũi tên quy định trình tự thực
hiện các thao tác;
• Hình ô van thể hiện thao tác nhập,
xuất dữ liệu.
Các tính chất của thuật toán.
• Tính dừng: Thuật toán phải kết thúc sau
một số hữu hạn lần thực hiện các thao
tác;
• Tính xác định: Sau khi thực hiện một
thao tác thì hoặc là thuật toán kết thúc
hoặc là có đúng một thao tác xác định để
Đúng
Đúng
Sai
Nhập N và dãy a
1
,..., a
N
Max ← a
i
a
i
>
Max?
i > N ?

Max ← a
1
, i ← 2
Đưa ra Max rồi kết
thúc
i ← i + 1
Sai
Dãy A
5 1 4 7 6 3 15
i
2 3 4 5 6 7
Max
5 5 5 7 7 7 15
GV: Hãy chỉ rõ các tính chất của
thuật toán trong ví dụ trên?
HS:
Tính dừng: Vì giá trị của i mỗi lần
tăng lên 1 nên sau N lần thì i > N,
khi đó kết quả phép so sánh ở bước 3
xác định việc đưa ra giá trị Max rồi
kết thúc.
Tính xác định: Thứ tự thực hiện các
bước của thuật toán được mặc định
là tuần tự nên sau bước 1 là bước 2,
sau bước 2 là bước 3. Kết quả các
phép so sánh trong bước 3 và bước 4
đều xác định duy nhất bước tiếp
theo cần thực hiện.
Tính đúng đắn: Vì thuật toán so sánh
Max với từng số hạng của dãy số và

thực hiện Max ← a
i
nếu a
i
> Max nên
sau khi so sánh hết N số hạng của
dãy thì Max là giá trị lớn nhất.
được thực hiện tiếp theo;
• Tính đúng đắn: Sau khi thuật toán kết
thúc, ta phải nhận được Output cần tìm.
IV . Củng cố:
- Thuật toán có 2 dạng: liệt kê và sơ đồ khối.
- Các tính chất của thuật toán
V . Bài về nhà:
- Học bài cũ.
- Trả lời các câu hỏi sau bài học.

×