So sán h2 bài toán tìm kiếm trong 2 thuật toán?

Một phần của tài liệu Tin 10_2cot(den tuan 31) (Trang 26 - 30)

IV. RÚT KINH NGHIỆM, BỔ SUNG:

H. So sán h2 bài toán tìm kiếm trong 2 thuật toán?

Đ. Dãy A ở đây là dãy tăng

• GV hướng dẫn HS tìm thuật toán giải bài toán.

• Các nhóm trình bày cách làm

• Minh hoạ qua việc tra từ điển

Cho các nhóm thảo luận việc tra từ điển. Từ đó rút ra thuật toán.

- Nếu aGiưa < k thì thực hiện tìm kiếm trên dãy aGiưa+1, aGiưa+2, …, an.

Quá trình trên sẽ được lặp lại một số lần cho đến khi hoặc đã tìm thấy khoá k trong dãy A hoặc phạm vi tìm kiếm bằng rỗng. • Thuật toán: * Cách liệt kê: - B1: Nhập N, các số hạng a1, a2, …, aN và khoá k - B2: Dau ¬ 1,Cuoi ¬ N;

- B3: Giưa = Dau Cuoi+2 

 ;

- B4: Nếu aGiưa = k thì thông báo chỉ số Giưa, rồi kết thúc;

- B5: Nếu aGiưa > k thì đặt Cuoi = Giưa - 1, rồi chuyển đến bước 7;

- B6: Dau ¬ Giưa +1;

- B7: Nếu Dau > cuoi thì thông báo dãy A không có số hạng nào có giá trị bằng k, kết thúc;

- B8: Quay lại bước 3.

Hoạt động 5: Mô tả thuật toán bằng sơ đồ khối * Sơ đồ khối

Hoạt động 6: Mô phỏng việc thực hiện thuật toán

Mô phỏng việc thực hiện thuật toán với N = 10,k= 21 k = 21, N =10 i 1 2 3 4 5 6 7 8 9 10 A 2 4 5 6 9 21 22 30 31 33 Dau 1 6 6 Cuoi 10 10 7 Giua 5 8 6 aGiua 9 30 21 Lỵt 1 2 3

lưỵt th ba thì aGiua = k. Vy ch s cần tìm là i = Giua = 6. 3- Tổng kết nội dung, đánh giá cuối bài :

4- Dặn dò, kế hoạch học tập tiết sau :

– Mô phỏng việc thực hiện thuật toán với dãy số khác. – Bài 3, 7 SGK.

Ngày soạn : 3/10/2009 Ngày dạy : 5/10/2009 Tiết PPCT : 15

BÀI TẬP BÀI TOÁN VÀ THUẬT TOÁN



I. MỤC TIÊU:

Kiến thức:

– Hiểu một số thuật toán đã học như sắp xếp, tìm kiếm.

Kĩ năng:

– Biết cách tìm thuật toán giải một số bài toán đơn giản.

Thái độ:

– Luyện khả năng tư duy lôgic khi giải quyết một vấn đề nào đó.

II. CHUẨN BỊ:

Giáo viên: Giáo án + bảng vẽ sơ đồ khối Học sinh: SGK + vở ghi. Làm bài tập

III. HOẠT ĐỘNG DẠY HỌC:

1. Ổn định tổ chức: Kiểm tra sĩ số lớp.

2. Kiểm tra bài cũ:

Hỏi: Nêu 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 ?

Đáp: 3. Giảng bài mới:

Nội dung Hoạt động của Giáo viên và Học sinh

Hoạt động 1: Luyện tập cách xác định bài toán Bài 1: Hãy xác định các bài toán sau:

a) Tính chu vi hình chữ nhật khi cho biết chiều dài và chiều rộng của hình chữ nhật đó.

b) Tìm giá trị lớn nhất của 2 số a, b.

• Cho các nhóm thảo luận, gọi 1 HS bất kì trong nhóm trả lời.

• HS trả lời

a) Input: chiều dài, ciều rộng Output: chu vi

b) Input: a, b

Output: GTLN của a và b.

Hoạt động 2: Mô tả thuật toán giải các bài toán bằng cách liệt kê hoặc bằng sơ đồ khối. Bài 2: Cho N và dãy số a1, a2, …, aN. Hãy tìm

thuật toán cho biết có bao nhiêu số hạng trong dãy có giá trị bằng 0.

• Cho các nhóm thực hiện lần lượt các bước để tìm thuật toán.

Gọi 1 HS bất kì trong nhóm trả lời.

H1. Xác định bài toán?

Đ1. Input: N, a1, a2, …, aN

Output: số Dem cho biết số lượng số 0 có trong dãy số trên.

H2. Nêu ý tưởng thuật toán?

Đ2.

– Ban đầu Dem = 0

– Lần lượt duyệt qua dãy số, nếu gặp số hạng nào bằng 0 thì tăng giá trị Dem lên 1.

Thuật toán:

a) Liệt kê: • Hướng dẫn HS liệt kê các bước của thuật toán và vẽ sơ đồ khối.

B1: Nhập N, a1, a2, …, aN

B2: i ← 0; Dem ← 0

B3: i ← i + 1

B4: Nếu i > N thì thông báo giá trị Dem, rồi kết thúc.

B5: Nếu ai = 0 thì Dem ← Dem + 1.

B6: Quay lại B3.

Mô phỏng việc thực hiện thuật toán:

a) N = 10, dãy A: 1, 2, 0, 4, 5, 0, 7, 8, 9, 0 →

Dem = 3

b) N = 10, dãy A: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 →

Dem = 0

3: Củng cố : Cho HS nhắc lại các bước tìm thuật toán giải 1 bài toán.

Một phần của tài liệu Tin 10_2cot(den tuan 31) (Trang 26 - 30)

Tải bản đầy đủ (DOC)

(95 trang)
w