Trong cuộc sống ta thường gặp những trả lời: việc liên quan đến sắp xếp như xếp các học Số nguyên tố là một số nguyên lớn hơn sinh theo thứ tự từ thấp đến cao, xếp điểm.. trung b×n[r]
Trang 1Tuần 7: Tiết 13: Ngày soạn: 10/10/2007
Bài 4: Bài toán và thuật toán
I- Mục tiêu:
1 Về kiến thức:
- Biết cách diễn tả thuật toán bằng một trong hai pháp: Liệt kê và sơ đồ khối
- Nắm
2 Về kĩ năng:
- Diễn tả
- Hiểu và diễn tả
3 Về thái độ:
Rèn luyện lòng say mê nghiên cứu tìm hiểu và duy khoa học
Tác phong làm việc độc lập sáng tạo, nâng cao lòng say mê học tập bộ môn
II- Chuẩn bị:
1 Giáo viên:
- Chuẩn bị tranh vẽ, máy tính và một số bài toán áp dụng để rèn luyện kỹ năng biểu diễn thuật toán
2 Học sinh:
- Sách giáo khoa và các ví dụ trong sách giáo khoa
III- Hoạt động dạy học:
Hoạt động của giáo viên Hoạt động của học sinh
1 ổn định lớp:
2 Bài cũ:
? Thuật toán là gì? Nêu các tính chất của
thuật toán?
? Hãy diễn tả thuật toán liệt kê đối với bài
toán kiểm tra N có phải là số nguyên tố hay
không?
3 Bài mới:
Hoạt động 1
Giới thiệu và hướng dẫncho học sinh mô
tả thuật toán của một số bài toán điển
hình- bài toán sắp xếp.
Trong cuộc sống ta O gặp những
việc liên quan đến sắp xếp xếp các học
sinh theo thứ tự từ thấp đến cao, xếp điểm
trung bình của học sinh theo thứ tự từ cao
đến thấp Nói một cách tổng quát cho một
HS báo cáo sĩ số,
Suy nghĩ và trả lời
Ví dụ: Tìm giá trị lớn nhất của một dãy số nguyên
Nghiên cứu sách giáo khoa và thảo luận, suy nghĩ và trả lời:
Số nguyên tố là một số nguyên lớn hơn
và chỉ có hai
a) Xác định bài toán:
- INPUT: Dãy A gồm N số nguyên a1, a2,…, aN.
Trang 2chỉ xét bài toán sắp xếp dạng đơn giản.
Bài toán: Cho dãy A gồm N số nguyên a1,
a2, …, an Cần sắp xếp các số hạng để dãy
A trở thành dãy không giảm (tức là số hạng
? Hãy xác định bài toán?
? Từ input và output của bài toán em hãy
nêu ý a giải bài toán?
nghĩa là ta lấy a1 so sánh với a2 nếu
a1>a2 thì ta tiến hành đổi chỗ hai vị trí này
cho nhau, lần 2, so sánh cho đến khi
không còn có sự đổi chỗ xảy ra nữa
? Từ ý a của bài toán em hãy viết thuật
toán dạng liệt kê?
Sau mỗi lần duyệt giá trị lớn nhất của
dãy A sẽ
2, sắp xếp thứ nhất thì giá trị lớn nhất
vậy cho các 2, tiếp theo Tóm lại, sau
mỗi lần duyệt có ít nhất một số hạng
sắp xếp đúng vị trí và không còn tham gia
vào quá trình đổi chỗ nữa, giống các
bọt
dãy) rồi tan biến Có thể vì thế mà sắp xếp
bằng tráo đổi còn có tên gọi là sắp xếp nổi
bọt
Thảo luận nhóm và trả lời:
b) ý tưởng bài toán:
Với mỗi cặp số hạng đứng liền kề trong dãy, nếu
số trớc lớn hơn số sau ta đổi vị trí chúng cho nhau Việc đó được lặp lại cho đến khi không có sự đổi chỗ nào xảy ra nữa
Thuật toán dạng liệt kê:
B1: Nhập N, các số hạng a1, a2,…, aN;
B2: M N;
B3: Nếu M < 2 thì đa ra dãy A đã sắp xếp rồi kết thúc;
B4: M M – 1; i 0;
B5: i i +1;
B6: Nếu i > M thì quay lại B3;
B7: Nếu ai > ai+1 thì tráo đổi ai và ai+1 cho nhau; B8: Quay lại B5.
- Ghi chú: Qua nhận xét trên ta thấy quá trình so sánh và đổi chỗ sau mỗi lượt chỉ thực hiện với dãy đã bỏ bớt số hạng cuối dãy Để thực hiện được điều đó trong thuật toán sử dụng biến nguyên M có giá trị khởi tạo là N, sau mỗi lần M giảm một đơn vị cho đến khi M < 2
- Trong thuật toán trên, i là biến chỉ số có giá trị nguyên thay đổi lần lượ từ 0 đến M +1
? Từ thuật toán liệt kê, em hãy viết thuật toán bằng sơ đồ khối?
Học sinh suy nghĩ, thảo luận và trình bày
Trang 3Hoạt động 2: Mô phỏng thuật toán với N =6 dãy A gồm các số hạng sau:
Dãy A: 3 5 9 8 1 7
Lượt thứ nhất:
Nhập N và
a 1 , a 2 , , a N
M N
M < 2 ?
M M - 1; i 0
i i + 1
i > M ?
a i > a i+1 ?
Tráo đổi
a i và a i+1
Đưa ra A đã sắp
xếp rồi kết thúc
Đ
Đ
Đ
S
S
S
7 1
8 9
5 3
7 1
9 8
5 3
7 9
1 8
5 3
Trang 4 Lượt thứ hai:
Lượt thứ ba:
Lượt thứ tư:
Cuối cùng ta được dãy số:
IV- Đánh giá cuối bài:
1 Nhắc lại những nội dung đã học:
- Khái niệm thuật toán và các tính chất của thuật toán
- Cách biểu diễn thuật toán bằng liệt kê và bằng sơ đồ khối
- Biết cách mô phỏng thuật toán thông qua ví dụ cụ thể
2 Bài tập áp dụng:
Câu 1: Cho một dãy A gồm N số nguyên
dãy không tăng
IV- Rút kinh nghiệm:
9 7
1 8
5 3
9 7
8 1
5 3
9 8
7 1
5 3
9 8
7 1
5 3
9 8
7 5
1 3
9 8
7 5
1 3
Trang 5………
………
………
………
………
………
………
………
………
………
………
………
………
... học:- Khái niệm thuật tốn tính chất thuật toán
- Cách biểu diễn thuật toán liệt kê sơ đồ khối
- Biết cách mơ thuật tốn thơng qua ví dụ cụ thể
2 Bài tập áp dụng:... lập sáng tạo, nâng cao lịng say mê học tập mơn
II- Chuẩn bị:
1 Giáo viên:
- Chuẩn bị tranh vẽ, máy tính số toán áp dụng để rèn luyện kỹ biểu diễn thuật toán
2...
2 Bài cũ:
? Thuật tốn gì? Nêu tính chất
thuật tốn?
? Hãy diễn tả thuật toán liệt kê
toán kiểm tra N có phải số ngun tố hay
khơng?
3 Bài