TIẾT 13: BÀI TỐN VÀ THUẬT TỐN (TIẾT 5)

Một phần của tài liệu Giáo án Tin học 10 .doc (Trang 32 - 36)

I.MỤC TIÊU: Qua bài học, học sinh cần nắm được:

1.Về kiến thức: -Biết khái niệm bài tốn và thuật tốn, các đặc trưng chính của thuật tốn.

-Hiểu cách biễu diễn thuật tốn bằng sơ đồ khối và ngơn ngữ liệt kê. -Hiểu một số thuật tốn thơng dụng.

2.Về kỹ năng:Xây dưngđược thuật tốn giải một số bài tốn đơn giản bằng sơ đồ khối hoặc ngơn ngữ liệt kê.

3.Về tư duy, thái độ: -Cĩ ý thức xây dựng bài học

-Biết xây dựng thuật tốn tối ưu: ít tốn thời gian và bộ nhớ.

II.CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH:1.Chuẩn bị của giáo viên: 1.Chuẩn bị của giáo viên:

- Đồ dùng dạy học: Máy tính điện tử -Giáo án, giáo án điện tử

2.Chuẩn bị của học sinh:Những khái niệm và kiến thức đã học.

III.PHƯƠNG PHÁP DẠY HỌC: Giải quyết vấn đề

IV.TIẾN HÀNH BÀI DẠY:

1. Ổn định lớp:(2’) Vắng: Trể:2.Kiểm tra bài củ: (3 - 6’): 2.Kiểm tra bài củ: (3 - 6’):

1.Trình bày thuật tốn sắp xếp bằng trao đổi theo phương pháp liệt kê từng bước? 2. Trình bày thuật tốn sắp xếp bằng tráo đổi theo phương pháp dung sơ đồ khối?

3.Dạy bài mới:(30 - 37’)

Hoạt động của giáo viên Hoạt động của học sinh 3.Ví dụ 3: Bài tốn tìm kiếm

Cho dãy A gồm N số nguyên khác nhau a1, a2,...,an và một số nguyên K. Cần biết cĩ hay khơng chỉ số i (1<=I <=N) mà ai = k. Nếu cĩ hãy cho biết chỉ số đĩ.

Câu hỏi: Xác định dữ liệu vào và ra của bài tốn.

i)Trường hợp 1: Dãy A chưa được sắp xếp a)Xác định bài tốn:

Input: Dãy A gồm N số nguyên khác nhau a1,

a2, ...., an và số nguyên K.

Output: Chỉ số I mà ai = K hopặc thơng báo khơng cĩ số hạng nào của dãy A cĩ giá trị bằng K

Câu hỏi: Để tìm kiếm 1 quyển sách nào đĩ ở trong thư viện ta phải làm thế nào?

b)Ý tưởng:

-Lần lượt kiểm tra từ số hạng thứ nhất.

-So sánh giá trị số hạng đang xét với khố k. cĩ hai trường hợp xảy ra:

+Số hạng đang xét cĩ giá trị bằng khố

Trả lời:

Input: Dãy A gồm N số nguyên khác nhau a1, a2, ...., an và số nguyên K. Output: Chỉ số I mà ai = K hopặc thơng báo khơng cĩ số hạng nào của dãy A cĩ giá trị bằng K

:

Trả lời: HS trả lời. GV khái quát lại và đi đến ý tưởng của bài tốn tìm kiếm theo kiểu tuần tự

Lưu Phi Hồng Năm Học 2009-2010

thơng báo vị trí mà số k đang đứng và kết thúc. +Số hạng đang xét khơng trung với khố

tiếp tục kiểm tra số hạng tiếp thao cho đến cuối dãy. Nếu cho đến cuối dãy khơng cĩ số hạng nào trùng với khố thì kết luận khơng cĩ số hạng nào bằng khố.

GV: Gọi Hs lên bảng vã sơ đồ khối của bài tốn.

c)Thuật tốn tìm kiếm tuần tự: *Cách liệt kê:

Bước 1: Nhập N, các số hạng a1, a2, ...., an và khố K

Bước 2:i1

Bước 3: Nếu ai = k thì thơng báo chỉ số I rồi kết thúc.

Bước 4: I i+1

Bước 5: Nếu i>N thì thơng báo dãy A khơng cĩ số hạng nào cĩ giá trị bằng k, rồi kết thúc

Bước 6: Quay lại bước 3

*Sơ đồ khối:

Câu hỏi: Khi dãy đã được sắp xếp thì thuật tốn trên cĩ nhược điểm gì?

GV: Khi dãy đã được sắp xếp thì ta tìm kiếm như thé nào?

ii)Trường hợp 2: Dãy A đã được sắp xếp( chiều tăng dần)

a)Xác định bài tốn:

Input: Dãy A là dãy tăng gồm N số nguyên khác nhau a1,a2,..., an và số nguyên k

Output: Chỉ số I mà ai = k hoặc thơng báo khơng cĩ số hạng nào của dãy A cĩ giá trị bằng k.

b) Ý tưởng: Sử dụng tính chất dãy A là dãy

tăng

*Sơ đồ khối

Trả lời: Thuật tốn khơng tối ưu do khơng tiết kiệm được thời gian tìm kiếm

Trả lời: HS trả lời. GV đưa ra nhạn xét để hướng dẫn HS hình thành thuât tốn tìm kiếm nhị phân. Giả sử ta cĩ: A: 1 5 6 9 15 17 18 19 20 K= 8 Kiểu tra lần 1: giữa = [(1+ 9)/2 ]= 5 a5 = 15 > k =8 Cuối = 5 - 1 = 4 Kiểm tra lần 2: Giữa = [(1+4)/2] = 2 A2 =5<k = 8  Đầu = 2 + 1 = 3 Kiểm tra lần 3: Giáo Án Tin Học 10 33 I1 Ai =k I I + 1 Nhập N, dãy a1,a2,..an và k Đưa ra i kết thúc I>N Đúng Sai Đúng Sai

Thống báo dãy A khơng cĩ số hạng cĩ giá trị K

-Tìm cách thu hẹp dần phạm vi tìm kiếm sau mỗi lần so sánh với số hạng được chọn. Để làm được điều đĩ, ta chọn số hạng agiữa ở giữa dãy để so sánh với K. Trong đĩ:

Giữa = [(n+1)/2]. Khi đĩ chỉ xảy ra 3 trường hợp.

-Nếu agiữa = k thì giữa là chỉ số cần tìm. -Nếu agiữa > k việc tìm kiếm đươc lặp lại tương tự trên đoạn a1, a2,...., agiữa -1

-Nếu agiữa < k việc tìm kiếm được lặp lại tương tự trên đoạn agiữa + 1, ...., an

Quá trình trên sẽ được lặp lại cho đến khi hoặc đã tìm thấy khố k hoặc phạm vi tìm kiếm bằng rỗng.

GV: Giải thích kỹ các thành phần trong thuật tốn bằng một dãy số cụ thể.

GV: Gọi một học sinh lên vẽ sơ đồ khối? c)Thuật tốn tìm kiếm nhị phân:

*Cách liệt kê:

Bước 1: Nhập n, các số hạng a1, a2, ...., an và khố k.

Bước 2: Đầu  1, Cuối  n Bước 3: Giữa  [(Đầu + cuối )/2]

Bước 4: Nếu agiữa = k thì thơng báo chỉ số giữa, rồi kết thúc.

Bước 5: Nếu agiữa > k thì đặt cuối = giữa - 1 

bước 7

Bước 6: Đầu  Giữa + 1

Bước 7: Nếu Đầu > Cuối thì thơng báo dãy A khơng cĩ số hạng nào cĩ giá trị bằng k rồi kết thúc.

Bước 8: Quay lại bước 3 *Sơ đồ khối: Giữa = [(3 + 4)/2]=3 A3 = 6 <k = 8  Đầu = 3 + 1 = 4 Kiểm tra lần 4: Giữa = [(4+4)/2] = 4 A4 = 9>k=8  Cuối = 4 - 1 = 3 Đầu = 4 > Cuối = 3: Kết thúc: Thơng báo khơng tìm thấy K

HS vẽ sơ đồ khối.

*Sơ đồ khối

4.Hoạt động củng cố:(1-3’) Nhắc lại thuật tốn tìm kiếm bằng 2 phương pháp: tuần tự và nhị phân

5.Hướng dẫn học sinh về nhà:(2-3’)

Học các nội dung: Thuật tốn tìm kiếm tuần tự và tìm kiếm nhị phân

Bài tập:7/SGK,1.34,1.351.40,1.42,1.43 1.48/SBT

Giáo Án Tin Học 10 34

Đầu1, Cuối = N

Giữa = [(Đầu + Cuối )/2] Nhập N, dãy a1,a2,..an và k agiữa = k Đúng Đúng Đúng Sai

Đưa ra giữa rồi kết thúc agiữa > k Sai Cuối  Giữa -1 Đầu  Giữa + 1 Đầu > Cuối Khơng cĩ số hạng k Sai Đúng

Lưu Phi Hồng Năm Học 2009-2010

Chuẩn bị bài mới: Làm các bài tập GV đã nêu

Ngày soạn:

Một phần của tài liệu Giáo án Tin học 10 .doc (Trang 32 - 36)

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

(83 trang)
w