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

bai toan va thuat toan tiet 4

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 (119.36 KB, 4 trang )

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ơng pháp: Liệt kê và sơ đồ khối.
- Nắm dợc các tính chất cơ bản của thuật toán.
2. Về kĩ năng:
- Diễn tả đợc thuật toán theo cách liệt kê hoặc bớc đầu thể hiện đợc thuật toán bằng sơ đồ
khối.
- Hiểu và diễn tả đợc một số bài toán cơ bản.
3. Về thái độ:
Rèn luyện lòng say mê nghiên cứu tìm hiểu và t 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ẫn cho 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 thờng gặp những
việc liên quan đến sắp xếp nh 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 dãy đối tợng, cần sắp xếp lại vị
trí các đối tợng theo một tiêu chí nào đó.
HS báo cáo sĩ số,
Suy nghĩ và trả lời
Theo dõi, lắng nghe.
1
Sau đây ta chỉ 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
a
1
, a
2
,., a
n
. 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 trớc không lớn hơn số hạng
sau).
? Hãy xác định bài toán?
? Từ input và output của bài toán em
hãy nêu ý tởng giải bài toán?
nghĩa là ta lấy a
1

so sánh với a
2
nếu
a
1
>a
2
thì ta tiến hành đổi chỗ hai vị trí
này cho nhau, lần lợt so sánh cho đến
khi không còn có sự đổi chỗ xảy ra nữa.
? Từ ý tởng 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ẽ đợc chuyển về cuối dãy số và
sau lợt sắp xếp thứ nhất thì giá trị lớn
nhất đợc xếp đúng vị trí là ở cuối dãy. T-
ơng tự nh vậy cho các lợt tiếp theo. Tóm
lại, sau mỗi lần duyệt có ít nhất một số
hạng đợc 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 nh các bọt nớc từ đáy hồ đã lên
mặt nớc ( cuối 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.
a) Xác định bài toán:
- INPUT: Dãy A gồm N số nguyên a
1
, a
2
,.., a

N
.
- OUTPUT: Dãy A đợc sắp xếp thành dãy không
giảm.
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 a
1
, a
2
,., a
N
;
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 a
i
> a
i
+1 thì tráo đổi a
i

và a
i
+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.
2
Hoạ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:
3
718953
719853
791853
971853
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
Lợt thứ hai:
Lợt thứ ba:
Lợt thứ t:
Cuối cùng ta đợc dãy số:
1 3 5 7 8 9
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ơng a
1
,., a
n
. Hãy sắp xếp dãy số trên
thanh dãy không tăng.
IV- Rút kinh nghiệm:
4
987153
987513
987513
971853
978153
987153

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×