1. Trang chủ
  2. » Giáo án - Bài giảng

bai toan va thuat toan tiet 4

4 492 2
Tài liệu đã được kiểm tra trùng lặp

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Bài Toán Và Thuật Toán
Trường học Trường Đại Học Công Nghệ Thông Tin
Chuyên ngành Công Nghệ Thông Tin
Thể loại Bài Giảng
Năm xuất bản 2023
Thành phố Hồ Chí Minh
Định dạng
Số trang 4
Dung lượng 102 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

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.. 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

Trang 1

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ị

HS báo cáo sĩ số,

 Suy nghĩ và trả lời

 Theo dõi, lắng nghe

Trang 2

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

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 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 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 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

Trang 3

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:

7 1

8 9

5 3

7 1

9 8

5 3

7 9

1 8

5 3

Nhập N và

a 1 , a 2 , , a 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

rồi kết thúc

Đ

Đ

Đ

S

S

S

Trang 4

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 a1,…., an Hãy sắp xếp dãy số trên thanh dãy không tăng

IV- Rút kinh nghiệm:

9 8

7 1

5 3

9 8

7 5

1 3

9 8

7 5

1 3

9 7

1 8

5 3

9 7

8 1

5 3

9 8

7 1

5 3

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

TỪ KHÓA LIÊN QUAN

w