Giáo án Tin học 10 - Full học kỳ I
1. Mục tiêu:
a) Kiến thức:
- Biết tin học là một ngành khoa học có đối tượng, nội dung và phương pháp nghiên cứu riêng.
- Biết MT vừa là đối tượng nghiên cứu, vừa là công cụ.
- Biết được sự phát triển mạnh mẽ của Tin học do nhu cầu xã hội.
- Biết các đặc trưng ưu việt của MT.
- Biết được một số ứng dụng của tin học và MTĐT trong các hoạt động của đời sống.
b) Kỹ năng:
- Chưa đòi hỏi kỹ năng gì.
c) Thái độ:
- Có ý thức sử dụng máy tính để khai thác thông tin, phục vụ công việc hàng ngày.
2. Chuẩn bị của giáo viên và học sinh:
a) Giáo viên:
- Bài soạn, Sách giáo khoa, Sách giáo viên, bảng.
Học sinh:
- Vở ghi bài, Sách giáo khoa.
ng. b) Kỹ năng: - Xây dựng được thuật toán giải một bài toán đơn giản bằng sơ đồ khối hoặc ngôn ngữ liệt kê. c) Thái độ: - Nghiêm túc trong học tập, say mê môn học. 2. Chuẩn bị của giáo viên và học sinh: a) Giáo viên: SGK, SGV, bài soạn. b) Học sinh: học bài cũ, đọc trước bài mới. 3) Tiến trình bài dạy: a) Kiểm tra bài cũ:Không. b) Nội dung bài mới: Hoạt động của GV và HS Nội dung chính Hoạt động 1: Ôn tập lý thuyết Bài toán là gì? Muốn giải bài toán trước tiên làm gì? Input, Output là gì? Thuật toán là gì? Các đặc trưng của bài toán? Hoạt động 2:Giải bài tập GV: Cách mô tả thuật toán theo cách liệt kê như thế nào? HS: Liệt kê các bước để thực hiện. GV: Tại sao bước 4 lại tính nghiệm luôn mà không xét D? HS: trả lời câu hỏi. GV: Bước 1 ta dùng hình gì để mô tả? HS: Trả lời câu hỏi: GV: Tính D ta dùng hình gì để mô tả? HS: Nhìn vào sơ đồ trả lời câu hỏi. GV: Xét D như thế nào? Xét D xảy ra mấy trường hợp? HS: Trả lời câu hỏi. Nhập a, b,c D←ab’ -a’b Dx←bc’ - b’c Dy ←ac’ -a’c D ≠ 0 Phương trình vô nghiệm Kết thúc Đúng Sai 2. Giải hệ phương trình ` 3. Giải pt: ax + b = 0 Nhập a, b a = 0 Phương trình vô nghiệm Kết thúc Đúng Sai 1. Mô tả thuật toán giải phương trình bậc hai: ax2 + bx + c = 0 (a ≠ 0) a) Cách liệt kê: Bước 1: Nhập các số thực a, b, c Bước 2: D←b2 - 4ac Bước 3: Nếu D < 0 thì phương trình vô nghiệm rồi kết thúc Bước 4: x= rồi kết thúc b) Mô tả theo sơ đồ khối Nhập a, b,c D← b2 – 4ac D <0 Phương trình vô nghiệm Kết thúc Đúng Sai Bước 1: Nhập a, b, c, a’, b’, c’ Bước 2: D=ab’-a’b Dx = bc’-b’c Dy = ac’-a’c Bước 3: Nếu D = 0, phương trình vô nghiệm rồi kết thúc. Bước 4: rồi kết thúc c) Củng cố: - Nhắc nhở lại kiến thức cơ bản của bài học khái niệm bài toán và khái niệm về thuật toán. - Cách mô tả thuật toán bằng hai cách là liệt kê từng bước và sơ đồ khối. d) Hướng dẫn học sinh tự học ở nhà: - Về nhà học bài và làm bài tập ở nhà. Ôn tâp chuẩn bị kiểm tra 1 tiết. Tiết theo PPCT: 16 KIỂM TRA 1 TIẾT Tiết theo PPCT: 17 § 5. NGÔN NGỮ LẬP TRÌNH 1. Mục tiêu: a) Kiến thức: - Giúp HS biết được khái niệm ngôn ngữ máy, hợp ngữ và ngôn ngữ bậc cao. b) Kỹ năng: - HS thấy rõ hơn muốn sử dụng máy tính, ngoài việc hiểu biết sơ lược về cấu trúc máy tính (phần cứng), còn cần hiểu biết về phần mềm ở mức độ có thể khởi động máy tính và làm một số việc. - HS thấy được thuật toán là một nội dung rất quan trọng. Một mặt, cung cấp cho HS một số thuật toán rất thông dụng, hay dùng không những trong Tin học mà cả trong nhiều lĩnh vực khác, trong cuộc sống hàng ngày. c) Thái độ: - Nghiêm túc, say mê môn học. 2. Chuẩn bị của giáo viên và học sinh: a) Giáo viên: SGK, SGV, bài soạn, bảng. b) Học sinh: học bài cũ, đọc trước bài mới. 3. Tiến trình bài dạy: a) Kiểm tra bài cũ: Hãy xác định bài toán (xác định Input, Output) và viết thuật toán của bài toán tìm số nhỏ nhất trong 2 số nguyên dương A, B. HS: - Input: hai số nguyên dương A và B. - Output: Min(A,B). Thuật toán: B1: Nhập A, B. B2: Nếu A≥ B thì Min = B. B3: Nếu B > A thì Min = A. Vẽ sơ đồ khối. GV: Đánh giá, cho điểm. b) Nội dung bài mới: Hoạt động của GV và HS Nội dung chính GV: Một chương trình có thể viết từ nhiều ngôn ngữ khác nhau gọi là ngôn ngữ lập trình. Để biết có các loại ngôn ngữ lập trình nào ta cùng nghiên cứu bài hôm nay. GV: Theo em hiểu thế nào là ngôn ngữ máy? HS: Nghiên cứu SGK và trả lời câu hỏi. GV: Kết luận. GV: Ưu và nhược điểm của ngôn ngữ máy? HS: Ưu: Viết các chương trình bằng ngôn ngữ máy, ta có thể khai thác triệt để các đặc điểm phần cứng của máy. Nhược: Ngôn ngữ máy không thuận lợi để viết hoặc hiểu chương trình vì ta phải nhớ một cách máy móc các dòng số không gợi ý nghĩa của lệnh đồng thời phải dùng nhiều câu lệnh để diễn tả chi tiết các thao tác của thuật toán. Để khắc phục nhược điểm trên của ngôn ngữ máy, một số ngôn ngữ lập trình khác đã được phát triển. Ngôn ngữ máy: Đó là ngôn ngữ duy nhất để viết chương trình mà máy tính trực tiếp hiểu và thực hiện được Mỗi loại máy tính đều có ngôn ngữ máy của nó. GV: Các em hãy đọc SGK (tr. 45) và cho biết hợp ngữ thuận lợi hơn ngôn ngữ máy ở điểm nào? HS: Đọc SGK và trả lời câu hỏi. Hợp ngữ: Hợp ngữ cho phép người lập trình sử dụng một số từ (thường là viết tắt các từ tiếng Anh) để thể hiện các lệnh cần thực hiện Một chương trình viết bằng hợp ngữ cần phải được dịch ra ngôn ngữ máy nhờ chương trình hợp dịch trước khi có thể thực hiện được trên máy tính. Ví dụ: Để cộng giá trị chứa trong hai thanh ghi có tên là AX và BX, có thể dùng một lệnh của hợp ngữ như sau: ADD AX, BX trong đó ADD (tiếng Anh có nghĩa là cộng) là kí hiệu phép cộng và kết quả được quy ước đặt vào thanh ghi AX. GV: Theo các em thì tại sao lại phải có sự ra đời và phát triển của ngôn ngữ bậc cao? HS: Trả lời câu hỏi: Hợp ngữ là một ngôn ngữ đã thuận lợi hơn cho các nhà lập trình chuyên nghiệp nhưng vẫn chưa thật thích hợp với đông đảo người lập trình. GV: Ưu và khuyết điểm của ngôn ngữ bậc cao là gì? HS: - Ưu: Dễ nhớ, dễ sử dụng, tính độc lập cao, ít phụ thuộc vào loại máy. - Khuyết: Khai thác không triệt để phần cứng MT, cần có chương trình dịch để MT hiểu. Ngôn ngữ bậc cao: Là ngôn ngữ gần với ngôn ngữ tự nhiên, có tính độc lập cao, ít phụ thuộc vào máy. Một số loại ngôn ngữ bậc cao: C, C++, Visual Basic, Pascal.... c) Củng cố, luyện tập: - Ngôn ngữ máy. - Hợp ngữ. - Ngôn ngữ bậc cao. - Chương trình dịch. d) Hướng dẫn học sinh tự học ở nhà: - Học bài cũ. - Trả lời các câu hỏi sau bài học.Tiết theo PPCT: 18 § 6. GIẢI BÀI TOÁN TRÊN MÁY TÍNH 1. Mục tiêu: a) 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. b) Kỹ năng: - Nắm được các bước và nội dung cụ thể các bước cần thực hiện khi giải một bài toán trên máy tính. c) Thái độ: - Nghiêm túc trong học tập, tích cực phát biểu xây dựng bài. 2. Chuẩn bị của giáo viên và học sinh: a) Giáo viên: SGK, SGV, bài soạn b) Học sinh: học bài cũ, đọc trước bài mới. 3. Tiến trình bài dạy: a) Kiểm tra bài cũ: Em hiểu ngôn ngữ lập trình là gì? Chương trình dịch dùng để làm gì? HS: - Trả lời câu hỏi. - GV: Đánh giá, cho điểm. b) Nội dung bài mới: Hoạt động của GV và HS Nội dung chính GV: Khả năng khai thác máy tính phụ thuộc rất nhiều vào sự hiểu biết của người dùng. Em có thể cho biết việc giải bài toán trên máy tính thường được tiến hành qua các bước nào? HS: trả lời câu hỏi. GV: Kết luận. Các bước giải bài toán trên MT: B1:Xác định bài toán; B2:Lựa chọn hoặc thiết kế thuật toán; B3:Viết chương trình; B4:Hiệu chỉnh; B5:Viết tài liệu. GV: Các em đã biết cách xác định bài toán, vậy hãy nhắc lại khi xác định bài toán cần phải xác định những thành phần nào? HS: Trả lời câu hỏi. Xác định bài toán: Việc xác định bài toán chính là xác định rõ hai thành phần Input và Output và mối quan hệ giữa chúng để có thể lựa chọn thuật toán, cách thể hiện các đại lượng đã cho, các đại lượng phát sinh trong quá trình giải bài toán và ngôn ngữ lập trình thích hợp. Ví dụ: sgk GV: Chúng ta cùng xét ví dụ sau: Ví dụ: Tôi nhờ 2 người cùng đi ra chợ mua 1 quyển vở và 1 chiếc bút. Người thứ nhất đi mua bút mang về rồi lại đi mua quyển vở. Người thứ hai đi mua bút, vở về cùng một lần. Nếu đó là một bài toán thì có 2 thuật toán để giải bài toán này. Vậy em hãy cho biết thuật toán nào tốt hơn? HS: thuật toán 2. GV: Qua ví dụ trên ta thấy bước lựa chọn hoặc thiết kế thuật toán là bước quan trọng nhất để giải một bài toán. GV: Vậy thuật toán tối ưu là gì? HS: - Ít tốn bộ nhớ. Dễ hiểu. Dễ sử dụng. GV: Em hãy nhắc lại một thuật toán có thể xây dựng bằng những cách nào? HS: Trả lời câu hỏi. Bằng cách liệt kê. Bằng sơ đồ khối. GV: Diễn tả thuật toán nói đơn giản chính là cách chúng ta xây dựng thuật toán. GV: Vậy có những cách diễn tả thuật toán nào? HS: Trả lời. GV: Kết luận. Lựa chọn hoặc thiết kế thuật toán: a) Lựa chọn thuật toán: Mỗi thuật toán chỉ giải một bài toán nào đó, nhưng có thể có nhiều thuật toán khác nhau cùng giải một bài toán. Cần thiết kế hoặc chọn một thuật toán phù hợp đã có để giải bài toán cho trước. Khi thiết kế hoặc lựa chọn thuật toán người ta thường quan tâm đến các tài nguyên như thời gian thực hiện, số lượng ô nhớ,... Một tiêu chí khác được rất nhiều người quan tâm là cần thiết kế hoặc lựa chọn thuật toán sao cho việc viết chương trình cho thuật toán đó ít phức tạp. b) Diễn tả thuật toán: Ví dụ: Tìm ƯCLN (M, N) · Xác định bài toán - Input: Nhập M, N; - Output: ƯCLN(M, N). · Ý tưởng: Sử dụng những điều đã biết sau: - Nếu M = N thì giá trị chung đó là ƯCLN của M và N; - Nếu M < N thì ƯCLN(M, N) = ƯCLN(N - M, M); - Nếu M > N thì ƯCLN(M, N) = ƯCLN(N, M - N). · Thuật toán Thuật toán diễn tả bằng cách liệt kê B1: Nhập M, N; B2: Nếu M = N thì lấy giá trị chung này làm ƯCLN rồi chuyển đến bước 5; B3: Nếu M > N thì M = M - N rồi quay lại bước 2; B4: N = N - M rồi quay lại bước 2; B5: Đưa ra kết quả ƯCLN; Kết thúc. Có 2 cách diễn tả thuật toán: Theo cách liệt kê. Theo sơ đồ khối. GV: Khi viết chương trình ta nên: Chọn một ngôn ngữ lập trình hoặc một phần mềm chuyên dụng thích hợp với thuật toán. Viết chương trình trong ngôn ngữ nào thì cần phải tuân theo đúng quy định ngữ pháp của ngôn ngữ đó. Viết chương trình: Việc viết chương trình là tổng hợp giữa việc lựa chọn cách tổ chức dữ liệu và sử dụng ngôn ngữ lập trình để diễn đạt đúng thuật toán. Hiệu chỉnh: Sau khi được viết xong, chương trình vẫn còn có thể có nhiều lỗi khác chưa phát hiện được nên có thể không cho kết quả đúng. Vì vậy, cần phải thử chương trình bằng cách thực hiện nó với một số bộ Input tiêu biểu phụ thuộc vào đặc thù của bài toán và bằng cách nào đó ta đã biết trước Output. Các bộ Input này được gọi là các Test. Nếu có sai sót, ta phải sửa chương trình rồi thử lại. Quá trình này được gọi là hiệu chỉnh. GV: Theo em viết tài liệu để
File đính kèm:
- giao an tin 10 full hk I.doc