bai toan va thuat toan tiet 4

4 490 2
bai toan va thuat toan tiet 4

Đang tải... (xem toàn văn)

Thông tin tài liệu

Bài 4: Bài toán 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ê 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 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 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 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 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 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ĩ 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 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ố 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í 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 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 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 đổ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 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 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 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 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ê 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 . 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ả. 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

Ngày đăng: 25/09/2013, 16:10

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan