III. Một số ví dụ: (tt) 3 Ví dụ 3: Bài tốn tìm
b) Thuật tốn tìm kiếm nhị phân (Binary Search)
nhị phân (Binary Search)
• 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à một 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.
• Ý tưởng: Sử dụng tính
chất dãy A là dãy tăng, ta tìm cách thu hẹp nhanh • Nhấn mạnh dãy A là một dãy tăng. H. So sánh 2 bài tốn tìm kiếm trong 2 thuật tốn? • GV hướng dẫn HS tìm thuật tốn giải bài tốn.
• 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 tốn.
Đ. Dãy A ở đây là dãy tăng
phạm vị tìm kiếm sau mỗi lần so sánh khố với số hạng được chọn, ta chọn số hạng aGiữa ở " giữa dãy" để so sánh với k, trong đĩ Giưa = N2+1
. Khi đĩ: - Nếu aGiưa = k thì Giưa là chỉ số cần tìm.
- Nếu aGiưa> k thì do dãy A là dãy đã sắp xếp nên việc tìm kiếm tiếp theo chỉ xét trên dãy a1, a2, …, aGiưa-1 . - 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 khố k trong dãy A hoặc phạm vi tìm kiếm bằng rỗng. • Thuật tốn: * Cách liệt kê: - B1: Nhập N, các số hạng a1, a2, …, aN và khố 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 tốn bằng sơ đồ khối
5
Hoạt động 6: Mơ phỏng việc thực hiện thuật tốn
5
Mơ phỏng việc thực hiện
thuật tố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. Hoạt động 7: Củng cố các kiến thức đã học 3 • GV cho HS nhận xét điểm
khác biệt cơ bản của 2 thuật tốn • Các nhĩm thảo luận và trình
bày
4. BÀI TẬP VỀ NHÀ:
– Mơ phỏng việc thực hiện thuật tốn với dãy số khác. – Bài 3, 7 SGK.
IV. RÚT KINH NGHIỆM, BỔ SUNG:
......................................................................................................................................................... ......................................................................................................................................................... .........................................................................................................................................................
Ngày soạn: 19/09/2011 Chương I: MỘT SỐ KHÁI NIỆM CƠ BẢN CỦA TIN HỌC
Tiết dạy: 15 Bài 4: BÀI TẬP BÀI TỐN VÀ THUẬT TỐN
Tuần: 08 I. MỤC TIÊU:
Kiến thức:
– Hiểu một số thuật tốn đã học như sắp xếp, tìm kiếm.
Kĩ năng:
– Biết cách tìm thuật tốn giải một số bài tố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ũ: 2. Kiểm tra bài cũ:
Hỏi: Nêu thuật tốn giải bài tố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:
TL Nội dung Hoạt động của Giáo viên Hoạt động của Học sinh
Hoạt động 1: Luyện tập cách xác định bài tốn
10 Bài 1: Hãy xác định các bài
tố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 tốn giải các bài tốn bằng cách liệt kê hoặc bằng sơ đồ khối.
10 Bài 2: Cho N và dãy số a1,
a2, …, aN. Hãy tìm thuật tố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 tốn. Gọi 1 HS bất kì trong nhĩm trả lời.
H1. Xác định bài tốn? H2. Nêu ý tưởng thuật tốn?
• HS trả lời
Đ1. Input: N, a1, a2, …, aN
Output: số Dem cho biết số lượng số 0 cĩ trong dãy số trê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.
20 • Thuật tốn:
a) Liệt kê:
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 tố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
Hoạt động 3: Củng cố
2 • Cho HS nhắc lại các bước tìm
thuật tốn giải 1 bài tốn. • HS nhắc lại
4. BÀI TẬP VỀ NHÀ:
– Xem lại các thuật tốn đã học. – Chuẩn bị kiểm tra 1 tiết.
IV. RÚT KINH NGHIỆM, BỔ SUNG:
......................................................................................................................................................... ......................................................................................................................................................... .........................................................................................................................................................
Ngày soạn: 01/10/2011 Chương I: MỘT SỐ KHÁI NIỆM CƠ BẢN CỦA TIN HỌC
Tiết dạy: 16 BÀI KIỂM TRA 1 TIẾT
Tuần: 08 I. MỤC TIÊU:
Kiến thức:
– Củng cố các kiến thức đã học về: thơng tin và dữ liệu, cấu trúc máy tính, bài tốn và thuật tốn.
Kĩ năng:
– Biết mã hố thơng tin, mơ phỏng việc thực hiện một thuật tốn.
Thái độ:
– Rèn luyện tính nghiêm túc trong khi làm bài.
II. CHUẨN BỊ:
Giáo viên: Đề bài kiểm tra. Học sinh: Ơn lại kiến thức đã học.
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ũ: 2. Kiểm tra bài cũ:
3. Giảng bài mới:
TL Nội dung Hoạt động của Giáo viên Hoạt động của Học sinh
• GV phát đề kiểm tra • HS làm bài
Đề kiểm tra số 1: I. Trắc nghiệm
1). Phát biểu nào dưới đây là sai? Vì sao?
A). Giá thành máy tính ngày càng hạ nhưng tốc độ, độ chính xác của máy tính ngày càng cao. B). Máy tính ra đời làm thay đổi phương thức quản lí và giao tiếp trong xã hội.
C). Máy tính tốt là máy tính nhỏ, gọn và đẹp.
D). Các chương trình trên máy tính ngày càng đáp ứng được nhiều ứng dụng thực tế và dễ sử dụng hơn.
2). Phát biểu nào sau đây về Ram là đúng
A). Thơng tin trong Ram sẽ bị mất khi tắt máy
B). Ram cĩ dung lượng nhỏ hơn đĩa mềm C). Ram cĩ dung lượng nhỏ hơn Rom 3). Chức năng nào dưới đây khơng phải là chức năng của máy tính điện tử
A). Lưu trữ thơng tin vào các bộ nhớ ngồi B). Xử lý thơng tin C). Nhận biết được mọi thơng tin D). Nhận thơng tin 4). Hãy chuyển đổi từ hệ nhị phân sang hệ thập phân: 10001012 = ?10
A). 6910 B). 6810 C). 7010
5). Hãy chuyển đổi từ hệ thập phân sang hệ nhị phân: 3810 = ?2 A). 1001102 B). 1001012 C). 0110012 6). Trong tin học, dữ liệu là
A). Dãy bit biểu diễn thơng tin trong máy tính B). Biểu diễn thơng tin dạng văn bản C). Các số liệu
7). Mã nhị phân của thơng tin là
A). Số trong hệ nhị phân B). Dãy bit biểu diễn thơng tin trong máy tính C).Số trong hệ Hexa
8). Thơng tin là
A). Hiểu biết về một thực thể B). Văn bản và số liệu C). Hình ảnh và âm thanh
9). Hãy chỉ ra phát biểu sai trong các phát biểu sau:
A). Với mọi chương trình khi máy tính đang thực hiện thì con người khơng thể can thiệp dừng chương trình đĩ.
C). Chương trình là dãy các lệnh, mỗi lệnh mơ tả một thao tác. 10). Phát biểu nào sau đây là đúng
A). Từ máy là dãy 16 bit hoặc 32 bit thơng tin
B). Máy tính xử lý theo từng đơn vị xử lý thơng tin gọi là từ máy
C). Từ máy của máy tính là một dãy các bit dữ liệu cĩ độ dài xác định tạo thành một đơn vị xử lý thơng tin
11). Phát biểu nào sau đây về Rom là đúng
A). Rom là bộ nhớ trong chỉ cho phép đọc dữ liệu B). Rom là bộ nhớ trong chỉ cĩ thể đọc và ghi dữ liệu C). Rom là bộ nhớ ngồi
12). Thiết bị vào dùng để
A). Lưu trữ thơng tin B). Đưa thơng tin ra C). Đưa thơng tin vào máy tính 13). Bộ điều khiển cĩ chức năng
A). Điều khiển hoạt động đồng bộ của các bộ phận trong máy tính và các thiết bị ngoại vi liên quan
B). Thực hiện các phép tốn số học và logic
C). Lưu trữ thơng tin cần thiết để máy tính hoạt động và dữ liệu trong q trình xử lí 14). Phát biểu nào sau đây là đúng:
A). Địa chỉ một ơ nhớ và nội dung ghi trong ơ nhớ đĩ thường thay đổi trong quá trình máy làm việc
B). Địa chỉ ơ nhớ và nội dung ghi trong ơ nhớ đĩ là độc lập. C). Xử lí dữ liệu trong máy tính nghĩa là truy cập dữ liệu đĩ
II. Tự luận:
Cho thuật tốn sau:
B1: Nhập 2 số nguyên a, b
B2: Nếu a>b thì a← a – b , ngược lại b ← b – a B3: a ← a . b
B4: Thơng báo giá trị a, b, rồi kết thúc.
Với các bộ dữ liệu vào như sau, hãy cho biết kết quả của thuật tốn (dữ liệu ra) a) a = 6 , b = –2 → a = , b =
b) a= 3 , b = 3 → a = , b = c) a = –5, b = 7 → a = , b =
Đáp án Bài kiểm tra số 1
1 2 3 4 5 6 7 8 9 10 11 12 13 14
A A C A A A B A A B A C A B
Tự luận: a) a = – 16, b = – 2 b) a = 0, b = 0 c) a = – 60, b = 12
4. BÀI TẬP VỀ NHÀ:
IV. RÚT KINH NGHIỆM, BỔ SUNG:
.........................................................................................................................................................
Ngày soạn: 10/10/2011 Chương I: MỘT SỐ KHÁI NIỆM CƠ BẢN CỦA TIN HỌC
Tiết dạy: 17 Bài 5: NGƠN NGỮ LẬP TRÌNH
Tuần: 09
I. MỤC TIÊU:
Kiến thức:
– Biết được khái niệm ngơn ngữ máy, hợp ngữ và ngơn ngữ bậc cao.
– Biết được ngơn ngữ lập trình là phương tiện dùng để diễn đạt cho máy tính những việc mà con người muốn máy thực hiện.
Kĩ năng:
– Biết được máy tính hoạt động theo chương trình, chương trình mà máy tính hiểu được là ngơn ngữ máy.
Thái độ:
– Cần thấy rõ muốn sử dụng máy tính, ngồi hiểu biết phần cứng cịn cần hiểu biết về phần mềm.
II. CHUẨN BỊ:
Giáo viên: Giáo án
Học sinh: Sách giáo khoa, vở ghi. Đọc bài trước.
III. HOẠT ĐỘNG DẠY HỌC:
– Ổn định tổ chức: Kiểm tra sĩ số lớp.
– Kiểm tra bài cũ: (5’)
Hỏi: Hãy viết thuật tốn của bài tốn tìm số nhỏ nhất trong 2 số nguyên A, B. Đáp: Một HS viết thuật tốn bằng cách liệt kê, một HS vẽ sơ đồ khối.
– Giảng bài mới:
TL Nội dung Hoạt động của Giáo viên Hoạt động của Học sinh
Hoạt động 1: Giới thiệu về ngơn ngữ lập trình và ngơn ngữ máy
12
• Khái niệm ngơn ngữ lập trình:
Ngơn ngữ dùng để viết chương trình cho máy tính gọi là ngơn ngữ lập trình.