2. Kiểm tra bài cũ: 5’
1. Vẽ sơ đồ và thuyết minh thuật toán tìm kiếm tuần tự 3. Bài mới
TG Hoạt động của GV và HS Nội dung
HĐ1: Xác định đợc bài toán, biết thuật giải của bài toán
10
GV: Gọi h/s đọc bài toán .
HS: Nghe , đọc, theo dõi, trả lời c©u hái.
1. 1 em xác định bài toán?
2. Nêu ý tởng bài toán.?
3. Một số vía dụ về thuật toán.
Ví dụ 3: SGK/T41: Bài toán tìm kiếm.
Cách 2: Tìm kiếm nhị phân
* Xác định bài toán.
- Inout:
- Output:
* ý tởng bài toán:
- Lấy số ở giữa so với k . + NÕu = k th× kÕt thóc;
+ Nếu nhỏ hơn k thì so sánh với nửa sau của dãy và ngợc lai so với nửa trớc.
HĐ2: Viết sơ đồ thuật toán theo cách liệt kê và sơ
đồ khối.
25 HS: Làm vào phiếu học tập độc lËp.
GV: Thu phiếu, treo kết quả bài toán bằng bảng phụ
HS: So sánh, nhận xét đối chiếu với kết quả bài làm của mình.
GV: Hớng dẫn học sinh làm mô
* Thuật toán theo cách liệt kê.
B1:
B2:
…..
* Sơ đồ khối: SGK/T43
phỏng thuật toán. * Mô phỏng thuật toán:
- SGK/ T44 4. Củng cố: 3’
- Nêu lại ý tởng bài toán;
- Xác định đợc bài toán và mô tả đợc thuật toán của bài toán tìm kiếm nhị phân.
5. Hớng dẫn về nhà: 2’
- Làm bài tập trang T44 IV. Rút kinh nghiệm
………
………
………
………
Ngày .. . tháng năm 2010… Duyệt của tổ trởng
Trần Xuân Thái
Ngày soạn:
Ngày giảng:
Tiết 15. Bài tập
I. Mục tiêu
1. Kiến thức: Củng cố cho học sinh về bài toán trong tin học.
2. Kĩ năng: Biết cách làm bài toán với một số bài toán đơn giản.
3. Thái độ, t duy: Hiểu sự cần thiết phải học thuật toán khi làm quen với tin học.
II. Chuẩn bị 1. Giáo viên:
2. Học sinh:
III. Tiến trình bài giảng 1. ổn định tổ chức lớp:
2. Kiểm tra bài cũ: 5’
1. Vẽ sơ đồ và thuyết minh thuật toán tìm kiếm tuần tự 2. Vẽ sơ đồ và thuyết minh thuật toán tìm kiếm nhị phân 3. Bài mới
TG Hoạt động của GV và HS Nội dung
10’ HĐ1: Củng cố kiến thức bài 4
GV: §a ra c©u hái.
HS: Củng cố lại kiến thức đã học học sinh trả lời.
1. Nêu khái niệm bài toán?
2. Muốn giải đợc 1 bài toán truơc tiên ta phải làm gì?
3. Input?
4. Output?
GV: Nhng muốn máy tính đa ra đ- ợc Output từ Input đã cho thì ta cần phải có cái gì?
? Muốn viết đợc chơng trình ta có phải có thuật toán
? Thuật toán có mấy dạng?
I. Lý thuyÕt:
1. KN bài toán:
- SGK / 32;
- Ta phải xác định đợc Input và Output - Input: Thông tin đa vào máy
- Output :Thông tin muốn lấy ra từ máy - Ta cần phải có CT
2. KN thuật toán:
- KN thuật toán: SGK/T33 - Có 2 dạng:
+ Liệt kê và sơ đồ khối.
27’ HĐ2. Bài tập áp dụng
Bài 1: SGK/T44
GV: Y/c HS đa ra nội dung 1 bài toán và xác định.
? In put?
? Out put?
Bài 2:
GV: Y/c HS n/c nội dung bài 2 trả
lêi c©u hái.
? Dãy các bớc trong bài toán có phải là thuật toán không?
Bài 1 SGK-T44 a) In put: a, b, c
Out put: Diện tích tam giác.
b) In put: x, y, R Out put: (I; R) Bài 2: SGK/T44
- Dãy các việc nêu trong bài tập không phải là thuật toán.
? V× sao?
Bài 3:
Hãy chỉ ra tính dừng của thuật toán t×m kiÕm tuÇn tù.?
Bài 5 SGK/T44:
- Tìm nghiệm của phơng trình bậc hai tổng quát:
ax2 + bx + c = 0 GV: y/c làm độc lập;
HS: Làm theo nhóm, đại diện nhóm trình bày.
- Thi đua giữa các nhóm
- Rút ra nhận xét về thái độ làm việc giữa các nhóm, so sánh kết quả.
Bài 6 SGK/T44
GV: Gọi 1 hs đọc bài toán
HS: N/c bài tập và trả lời câu hỏi.
1. Bai toán có dạng gì?
2. Nêu ý tởng bài toán?
3. Thuật toán bằng 2 cách.
GV: HS dựa vào VD2 SGK/T 38+39.
- Thay bất đẳng thức ở b7 thành a i
< ai + 1 .
- Vì tuy số bớc trong mô tả là hữu hạn nhng việc thực hiện là vô hạn.
Bài 3: SGK/T44
- Chỉ số i mỗi lần tăng lên 1 đơn vị. Nên nếu có số hạng của dãy bằng giá trị cần tìm thì
thuật toán thực hiện hữu hạn bớc ( vì ít hơn N bớc mà N là hữu hạn).
- Với giá trị trong dãy không có giá trị cần tìm thì sau N lần tăng i, mỗi lần 1 đơn vị thì i
> N và thuật toán KT. Vậy thuật toán luôn kết thúc sau hữu hạn bớc.
Bài 5 SGK/T44:
Tìm nghiệm của phơng trình bậc hai tổng quát: ax2 + bx + c = 0
* Xác định bài toán.
- Input: a,b,c;
- Output: Nghiệm x của phơng trình.
* ý tởng bài toán:
- TÝnh ∆ - + XÐt ∆
Nếu ∆ < 0 : PT vô nghiệm;
Nếu ∆ = 0 : PT có nghiệm kép x ← -b/2a Nếu ∆ < 0 : PT có 2 nghiệm pb
a D x b
2 2
, 1
±
← − ròi kết thúc
* Xây dựng thuật toán bằng 2 cách:
C1: Liệt kê
B1. Nhập a,b, c là các số thực.
B2. ∆ ← b2 – 4ac
B3: Nếu ∆ < 0 thì TB pt vô nghiệm – KT B4: Nếu ∆ = 0 thì TB pt có nghiệm kép x
← -b/2a rồi kết thức.
B5: Nếu ∆ < 0 thì TB pt có 2 nghiệm pb
a D x b
2 2
, 1
±
← − rồi kết thúc.
C2: Sơ đồ khối:
Bài 6 SGK/T44:
- Bài toán sắp xếp giảm dần.
* ý tởng bài toán:
- Nếu a i < ai + 1 thì tráo đổi.
* Thuật toán - Liệt kê;
- Sơ đồ khối.
Bài 7 SGK/T44:
GV:
GV: Gọi 1 hs đọc bài toán
HS: N/c bài tập và trả lời câu hỏi.
1. Bai toán có dạng gì?
2. Nêu ý tởng bài toán?
3. Thuật toán bằng 2 cách.
Bài 7 SGK/T44:
;
4. Củng cố: 2’
- Các thuật toán đã học 5. Hớng dẫn về nhà: 1’
- Về nhà xem lại các ví dụ đã học và làm các bài tập trong sách bài tập.
- ôn toàn bộ bài 3 và bài 4.
- TiÕt sau kiÓm tra 45 phót.
IV. Rút kinh nghiệm
………
………
………
………
Ngày .. . tháng .. năm… …
……
Duyệt của tổ trởng
Trần Xuân Thái
Ngày soạn:
Ngày giảng:
TiÕt 16. KiÓm tra mét tiÕt
I. Mục tiêu
1. Kiến thức: Củng cố cho học sinh các kiến thức đã học, giúp học sinh tự kiểm tra đánh giá kiến thức của mình để có phơng pháp học tập tốt hơn.
2. Kĩ năng: Biết kiểm tra và tự kiểm tra.
3. Thái độ, t duy: Có ý thức tự học, tinh thần cố gắng vơn lên.
II. Chuẩn bị 1. Giáo viên:
2. Học sinh:
III. Tiến trình bài giảng 1. ổn định tổ chức lớp:
2. KiÓm tra 1 tiÕt:
Ma trận đề
Nội dung Biết Hiểu Vận dụng Tổng
Giới thiệu về
máy tính 1.5 1.0 1.0 3,5
Bài toán và
thuật toán 1.5 3.0 2.0 6,5
Céng 3.0 4.0 3.0 10
đề bài (đính kèm)
đáp án
Câu 1(2 điểm): Điền tên các bộ phận và chiều mũi tên vào hình sau để tạo thành sơ đồ cấu trúc máy tính:
Bộ nhớ ngoài
Bộ xử lý trung tâm
Bé nhí trong Thiết bị
vào Thiết bị
ra
C©u 2( 2 ®iÓm
Bộ nhớ trong Bộ nhớ ngoài Thiết bị vào Thiết bị ra Thành phần quan trọng nhất của máy tính ROM, RAM Đĩa cứng, đĩa
mền, đĩa CD, thiết bị nhớ flash
Chuột, máy quét, bàn phÝm,
webcam, mô
dem, micrô.
Loa, màn hình, máy in, mô đem, máy chiếu, tai nghe.
CPU
C©u 3: 2 ®iÓm
- Ghép đúng đáp án 1- c, 2 a, 3 d, 4 b.– – – C©u 4:
a) Đáp án đúng A (1 diểm)
b) Mô phỏng các bớc thực hiện nh sau:
Dãy A 5 2 3 8 4 9 6
i 2 3 4 5 6 7
Max 5 5 5 8 8 9 9
3.. Củng cố và hớng dẫn
- Xem lại các kiến thức đã học của chơng. Xem nội dung chơng mới IV. Rút kinh nghiệm
………
………
………
………
Ngày .. . tháng … …… năm ..
…
Duyệt của tổ trởng
Trần Xuân Thái
Ngày soạn: 10/10/2009 Ngày giảng:
Tiết 17. ngôn ngữ lập trình
I. Mục tiêu
1. Kiến thức: Biết đợc khái niệm ngôn ngữ máy, hợp ngữ và ngôn ngữ lập trình bËc cao.
2. Kĩ năng: Biết cách so sánh các loại ngôn ngữ máy, u điểm, nhợc điểm, ngôn ngữ bậc cao, máy tính hoạt động theo chơng trình.
3. Thái độ, t duy: Hiểu sự cần thiết phải học thuật toán khi làm quen với tin học.
II. Chuẩn bị:
1. Giáo viên:
2. Học sinh:
III. Tiến trình bài giảng:
1. ổn định tổ chức lớp:
2. Bài mới:
Hoạt động của Gv và HS Nội dung
HĐ1. Tìm hiểu ngôn ngữ máy
GV: Yêu cầu học sinh đọc và nghiên cứu Sgk, trả lời câu hỏi.
1. Em hiểu nh thế nào về NNLT?
2. Kể tên những loại NNLT mà em biÕt?
3. Ngôn ngữ máy là gì?
4. Viết chơng trình bằng ngôn ngữ máy có u điểm, nhợc điểm là gì?
5. NN máy có phù hợp với số đông ng- êi lËp tr×nh?
6. Cách khắc phục nh thế nào?
HS : Đọc, nghiên cứu Sgk, thảo luận theo nhóm bàn trả lời câu hỏi.
- Đại diện nhóm trình bày trên bảng.
Thuyết minh cho cách làm của mình.
- Dới lớp nhận xét, bổ sung cho các nhóm còn thiếu
- Ngôn ngữ lập trình dùng để viết chơng tr×nh.
+ NN máy, hợp ngữ, NNLT bậc cao..
1. Ngôn ngữ máy:
- Mỗi loại máy tính đều có 1 ngôn ngữ, đó là ngôn ngữ duy nhất dùng để viết chơng trình mà MT có thể hiểu và thực hiệnđợc.
- ¦§:
+ Cho phép khai thác triệt để các đặc điểm phần cứng máy tính.
- N§:
+ Ngôn ngữ phức tạp, phụ thuộc nhiều vao phần cứng máy tính.
+ Chơng trình viết hết nhiều công sức, cồng kềnh;
+ Khó nhớ, khó hiệu chỉnh.
- Không thích hợp với số đông ngời lập tr×nh.
- GV: Tóm tắt lại những ý kiến chung.
GV: Giải thích lí do ra đời của hợp ngữ, yêu cầu HS dọc SGK/T45+46 chỉ ra u nhợc điểm.
HS: Theo dõi, đọc, trình bày u nhợc
®iÓm.
? Hợp ngữ có phù hợp với số đông ngời lËp tr×nh?
? So sánh hợp ngữ và ngôn ngữ máy?
? Cho ví dụ hợp ngữ?
- Yêu cầu học sinh đọc và nghiên cứu sgk
? So sánh hợp ngữ, ngôn ngữ máy và ngôn ngữ bậc cao?
? Có những ngôn ngữ bậc cao nào?
? Ưu điểm? Nhợc điểm?
? Chơng trình dịch dùng để làm gì?
? Vì sao phải phát triển các ngôn ngữ
bËc cao?
2. Hợp ngữ:
- ¦§
+ + - N§:
+
- Cha. Vì nó vẫn còn phức tạp…
VD:
3. Ngôn ngữ bậc cao - SGK/T46
3. Củng cố
- Học sinh làm các bài tập: Bài 1.49, 1.50, 1.51, 1.52. Chia lớp thành 4 nhóm, làm vào bảng nhóm.
4. Hớng dẫn về nhà:
- Về nhà xem lại các ví dụ đã học và làm các bài tập trong sách bài tập.
- Đọc trớc giải bài toán trên máy tính.
IV. Rút kinh nghiệm
………
………
………
Ngày 10 tháng 10 năm 2010 Duyệt của tổ trởng
Trần Xuân Thái
Ngày soạn: 10/10/2009 Ngày giảng:
Tiết 18. GiảI bài toán trên máy tính
I. Mục tiêu
1. Kiến thức: Biết các bớc cơ bản khi tiến hành giải bài toán trên máy tính; xác
định bài toán, xây dựng thuật toán, lựa chọn cấu trúc dữ liệu, viết chơng trình, hiệu chỉnh, đa ra kết quả và hớng dẫn sử dụng.
2. Kĩ năng: So sánh đợc tính u việt của các bớc cơ bản khi tiến hành giải toán: xác
định bài toán, lựa chọn thuật toán và hiệu chỉnh.
3. Thái độ, t duy: Làm việc chính xác khoa học.
II. Chuẩn bị
1. Giáo viên: Chơng trình Pascal mẫu.
2. Học sinh:
III. Tiến trình bài giảng 1. ổn định tổ chức lớp:
2. Kiểm tra bài cũ:
1. Ngôn ngữ lập trình là gì?
2. So sánh ngôn ngữ máy, ngôn ngữ bậc cao và hợp ngữ?
3. Bài mới.
Hoạt động của Gv Nội dung
*Đặt vấn đề:
GV: Đa ra bài toán tìm giá trị lớn nhất của một dãy số nguyên.
HS: Quan sát trả lời câu hỏi.
? Bài toán gồm mấy thành phần? Đó là những thành phần nào?
? Từ Input đến Output cần phải có
điều kiện gì?
? Hãy xác định bài toán trên?
? Hãy chỉ ra những u, nhợc điểm của việc giải bài toán bằng máy tính so với cách giải toán thông thờng?
GV: Yêu cầu học sinh đọc và nghiên cứu sgk trang 47
? Bớc lựa chọn thuật toán và thiết kế thuật toán có vai trò gì trong giải một bài toán?
HĐ1. Xác định bài toán
- Bài toán gồm hai thành phần:
+ In put và out put.
- Xác định mối quan hệ giữa hai thành phần để tìm ra thuật toán.
Input:
Output:
- Nhanh;
- Chính xác;
- Giải quyết nhanh các bài toán khó.
HĐ2. Lựa chọn và thiết kế thuật toán
* Lựa chọn thuật toán
- Là bớc quan trọng nhất để giải một bài toán.
? Khi thiết kế hay lựa chọn thuật toán ta cần quan tâm đến vấn đề gì?
? Biểu diễn thuật toán bằng liệt kê?
? Chuyển sang sơ đồ khối?
? Ví dụ mô phỏng ? VD: (N= 27, M= 9)
- Yêu cầu học sinh đọc và nghiên cứu sgk/50
? Viết chơng trình là gì?
? Cần chú ý những gì khi viết chơng tr×nh?
- Yêu cầu học sinh đọc và nghiên cứu sgk/50
- VD?
- Mỗi thuật toán chỉ giải một bài toán, nh- ng một bài toán lại có nhiều thuật giải khác nhau.
- Khi thiết kế thuật toán, lựa chọn thuật toán cần quan tâm đến cac tài nguyên:
Thời gian, ô nhớ, trong đó thời gian là… quan trọng nhất.
* Diễn tả thuât toán a) Xác định bài toán:
- In put:
- Out put:
b) ý tởng:
c) Thuật toán:
- Cách liệt kê: Sgk/48 - Sơ đồ khối: Sgk/49
*VDHĐ3. Viết ch ơng trình
- Tổ hợp: Lựa chọn t/c d l và sử dụng ngôn ngữ lập trình để diễn đạt đúng thuật toán.
- Chọn ngôn ngữ lập trình thích hợp, tuân theo đúng quy định ngữ pháp.
- Chơng trình dịch phát hiện và báo lỗi.
HĐ4: Hiệu chỉnh và viết tài liệu
- Khi viết chơng trình vẫn có nhiều lỗi cần sửa.
- Cần TEST nhiều bộ In put khác nhau.
- Viết tài liệu: Sgk/50.
4. Hớng dẫn củng cố:
- Tiêu chuẩn lựa chon thuật toán là gì? Nội dung và mục đích của hiệu chỉnh
- Viết thuật toán tìm giá trị lớn nhất của một dãy số nguyên). Kiểm tra thuật toán bằng một số bộ test
5. Hớng dẫn về nhà:
- Về nhà xem lại các ví dụ đã học và làm các bài tập trong sách bài tập.
- Đọc trớc “Phần mền máy tính. Những ứng dụng của tin học”
IV. Rút kinh nghiệm
Ngày 11 tháng 10 năm 2010 Duyệt của tổ trởng
Trần Xuân Thái
Ngày soạn:17/10/2010 Ngày giảng: