Chủ đề 1MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH (Lớp 11, 2 tiết) 1.Thông tin bài học Loại giáo án: Giáo án lý thuyết Chủ đề lớn: Chủ đề F (Giải quyết vấn đề với sự trợ giúp của máy tính) Chủ đề con: Kĩ thuật lập trình (CS) Vị trí bài học: Đây là bài học đầu tiên về ngôn ngữ lập trình Thời lượng: 2 tiết 2.Mục tiêu a) Kiến thức, kĩ năng Nêu được khái niệm về lập trìnhGiải thích được khả năng ngôn ngữ lập trình bậc cao, phân biệt được với ngôn ngữ máy và hợp ngữ. Giải thích được ý nghĩa và nhiệm vụ của chương trình dịch. Phân biệt được biên dịch và thông dịch.Nêu được ngôn ngữ lập trình có ba thành phần cơ bản là: bảng chữ cái, cú pháp và ngữ nghĩa. Nêu được các khái niệm tên, tên chuẩn, tên dành riêng (từ khoá), hằng và biến.Trình bày được các quy định về tên, hằng và biến trong một ngôn ngữ lập trình cụ thể.Thực hiện được việc đặt tên đúng và nhận biết được tên sai quy định.b) Năng lực được củng cố và phát triển cho HS NLc (Giải quyết vấn đề với sự hỗ trợ của công nghệ thông tin và truyền thông): HS được rèn luyện, bồi dưỡng năng lực giải quyết vấn đề thông qua học lập trình, đồng thời được phát triển một số thao tác trí tuệ trong hoạt động lập trình.
Tuần Cụm tiết - Ngày soạn: …………… Ngày dạy: …………… Chủ đề MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGƠN NGỮ LẬP TRÌNH (Lớp 11, tiết) Thông tin học - Loại giáo án: Giáo án lý thuyết Chủ đề lớn: Chủ đề F (Giải vấn đề với trợ giúp máy tính) - Chủ đề con: Kĩ thuật lập trình (CS) - Vị trí học: Đây học ngơn ngữ lập trình - Thời lượng: tiết Mục tiêu a) Kiến thức, kĩ - Nêu khái niệm lập trình - Giải thích khả ngơn ngữ lập trình bậc cao, phân biệt với ngôn ngữ máy hợp ngữ Giải thích ý nghĩa nhiệm vụ chương trình dịch Phân biệt biên dịch thơng dịch - Nêu ngơn ngữ lập trình có ba thành phần là: bảng chữ cái, cú pháp ngữ nghĩa Nêu khái niệm tên, tên chuẩn, tên dành riêng (từ khố), biến - Trình bày quy định tên, biến ngơn ngữ lập trình cụ thể Thực việc đặt tên nhận biết tên sai quy định b) Năng lực củng cố phát triển cho HS - NLc (Giải vấn đề với hỗ trợ công nghệ thông tin truyền thông): HS rèn luyện, bồi dưỡng lực giải vấn đề thơng qua học lập trình, đồng thời phát triển số thao tác trí tuệ hoạt động lập trình Nội dung học - Tìm hiểu khái niệm lâp trình ngơn ngữ lập trình - Tìm hiểu hai loại chương trình dịch: thơng dịch biên dịch - Tìm hiểu khái niệm lâp trình ngơn ngữ lập trình - Giới thiệu tên - Giới thiệu biến Phương pháp, kĩ thuật dạy học thiết bị, phương tiện dạy học - Phương pháp dạy học: Tự học “Phát giải vấn đề” - Kĩ thuật dạy học: Thảo luận nhóm, vấn đáp Phương tiện dạy học: CT GDPT Tin học (12/2018); máy tính, máy chiếu; giảng điện tử; số chương trình minh họa Tiến trình sư phạm (2 tiết) Tổng quát Tiết Hoạt động Thời gian HĐ1: Tìm hiểu khái niệm lâp trình ngơn ngữ lập trình 10’ HĐ2: Tìm hiểu hai loại chương trình dịch: thơng dịch biên dịch 15’ HĐ3: Tìm hiểu khái niệm lâp trình ngơn ngữ lập trình 20’ HĐ4: Giới thiệu tên 10’ HĐ5: Giới thiệu biến 15’ HĐ6: Kiểm tra, đánh giá chủ đề 20’ Hoạt động 1: Tìm hiểu khái niệm lâp trình ngơn ngữ lập trình (10 phút, tiết 1) a) Mục tiêu - Nêu khái niệm lập trình - Giải thích khả ngơn ngữ lập trình bậc cao, phân biệt với ngôn ngữ máy hợp ngữ b) Sản phẩm - HS trình bày khái niệm lập trình, giải thích khả NNLT bậc cao, phân biệt ngôn ngữ máy hợp ngữ c) Nội dung hoạt động GV hỏi cho học sinh: Hãy nêu cách giải tốn máy tính? Gợi động cơ: GV cho toán yêu cầu biện luận để tìm nghiệm phương trình ax + b=0 + Hãy xác định Input, Output toán + Hãy xác định bước để giải toán HS suy nghĩ trả lời: - Có bước giải tốn máy tính B1: Xác định toán (Xác đinh Input Output) B2: Lựa chọn xây dựng thuật tốn (Lựa chọn TT thích hợp) B3: Viết chương trình (CTDL NNLT diễn tả thuật toán) B4: Hiệu chỉnh (Chạy thử, sửa sai) B5: Viết chương trình (Mơ tả CT, hướng dẫn sử dụng) - Quan sát toán trả lời câu hỏi +Input: a, b +Output: x=-b/a, vô nghiệm, vô số nghiệm - Các bước để giải B1: Nhập a, b B2: Nếu a ≠ kết luận có nghiệm x = -b/a B3: Nếu a = b ≠ 0, kết luận vô nghiệm B4: Nếu a = b = 0, kết luận vô số nghiệm GV yêu cầu học sinh bàn vào nhóm, thảo luận phút ghi giấy để GV kiểm tra, trả lời câu hỏi sau: -Hệ thống bước gọi thuật toán Làm để máy tính điện tử hiểu thuật toán này? -Các em cho biết khái niệm lập trình ? - Kết hoạt động lập trình ? -Ngơn ngữ lập trình gồm loại nào? -Theo em chương trình viết ngơn ngữ bậc cao chương trình viết ngôn ngữ máy khác nào? -Làm để chuyển chương trình viết ngơn ngữ bậc cao sang ngơn ngữ máy? -Vì khơng lập trình ngơn ngữ máy để khỏi cơng chuyển đổi lập trình với ngơn ngữ bậc cao d) Tổ chức dạy học HĐ GV Trước HĐ HS – GV đưa đưa hệ thống câu hỏi yêu cầu HS tìm hiểu câu hỏi cho – Với câu hỏi nêu, GV qui định bàn nhóm yêu cầu HS độc lập suy HĐ nghĩ trước trao đổi với bạn bên cạnh nhóm Trong HĐ Quan sát giúp đỡ HS không hiểu Độc lập suy đoán nhiệm vụ câu hỏi Trao đổi thảo luận tong nhóm để trả lời câu hỏi – – Xung phong trả lời câu hỏi trả lời câu hỏi GV gọi tên – Ghi chép phần nội dung kiến thức GV trình bày Khuyến khích HS xung phong trả lời câu hỏi Sau HĐ – Chỉ định số nhóm trả lời câu hỏi – Cung cấp kiến thức phần nội dung Hoạt động 2: Tìm hiểu hai loại chương trình dịch: thơng dịch biên dịch (15 phút, tiết 1) a) Mục tiêu - Giải thích ý nghĩa nhiệm vụ chương trình dịch Phân biệt biên dịch thông dịch b) Sản phẩm - HS trình bày ý nghĩa nhiệm vụ chương trình dịch Phân biệt biên dịch thơng dịch c) Nội dung hoạt động Nêu vấn đề: Em muốn giới thiệu trường cho người khách du lịch quốc tế biết tiếng Anh, có hai cách thực hiện: C1: Cần người biết tiếng Anh dịch câu nói em sang tiếng Anh cho người khách Cách mày gọi lag thông dịch C2: Em soạn nội dung giới thiệu giấy người phiên dịch dịch tồn nội dung sang tiếng Anh đọc cho khách nghe Cách gọi biên dịch Tương tự chương trình dịch có hai loại thơng dịch biên dịch -Các em cho biết tiến trình thơng dịch biên dịch + Chương trình nguồn chương trình viết ngơn ngữ lập trình bậc cao + Chương trình đích chương trình thực chuyển đổi sang ngôn ngữ máy -Nghiên cứu SGK trả lời câu hỏi: +Thơng dịch: B1: Kiểm tra tính đắn câu lệnh chương trình nguồn; B2: Chuyển lệnh thành ngơn ngữ máy B3: Thực câu lệnh vừa chuyển đổi +Biên dịch: B1: Duyệt, phát lỗi, kiểm tra tính đắn câu lệnh chương trình nguồn B2: Dịch tồn chương trình nguồn thành chương trình đích thực máy lưu trữ để sử dụng lại cần thiết d) Tổ chức dạy học Hoạt động thực theo phương pháp dạy học “Phát giải vấn đề” sau: Bước 1: Tiếp cận vấn đề (3 phút) GV nêu vấn đề mơ tả u cầu HS cần thực Tình có vấn đề bước thể điểm sau: – HS cịn lúng túng xác định thơng dịch biên dịch tốn – Chưa phân biệt thông dịch biên dịch Bước 2: Lựa chọn giải pháp (5 phút) GV gợi ý cho HS lựa chọn giải pháp thông qua kĩ thuật “vấn đáp tìm tịi” Giải pháp gồm cơng việc chính: Xác định thơng dịch biên dịch, phân biệt hai chương trình dịch Bước 3: Thực giải pháp (5) GV khuyến khích HS tự suy nghĩ trả lời câu hỏi giáo viên Bước 4: Đánh giá, tìm kiếm sâu, mở rộng (2 phút) Ở bước này, GV giới thiệu khuyến khích HS suy nghĩ phân biệt thơng dịch biên dịch Hoạt động Tìm hiểu khái niệm lâp trình ngơn ngữ lập trình (20 phút, tiết 1) a) Mục tiêu - Nêu ngôn ngữ lập trình có ba thành phần là: bảng chữ cái, cú pháp ngữ nghĩa b) Sản phẩm - HS trình bày ba thành phần là: bảng chữ cái, cú pháp ngữ nghĩa c) Nội dung hoạt động Dẫn dắt vào bài:- Để diễn tả ngôn ngữ tự nhiên ta cần phải biết gì? Giới thiệu bảng chữ cái: SGK Trang Giới thiệu cú pháp Ví dụ : Xét biểu thức A+B (1) A,B số thực I+J (2) với I,J số nguyên Gợi động cơ: GV hỏi HS: - Về ngữ nghĩa biểu thức có khác không? - Mỗi ngôn ngữ khác có ngữ nghĩa khác - Các ngơn ngữ lập trình nói chung thường có chung số thành phần như: Dùng kí hiệu để viết chương trình, viết theo quy tắc nào? viết có ý nghĩa gì? Mỗi ngơn ngữ lập trình có quy định riêng thành phần d) Tổ chức dạy học HĐ GV Trước – GV đưa đưa hệ thống câu hỏi yêu cầu HS tìm hiểu câu hỏi cho – Với câu hỏi nêu, GV qui định bàn nhóm yêu cầu HS độc lập suy HĐ Trong HĐ HĐ HS nghĩ trả lời Quan sát giúp đỡ HS không hiểu Độc lập suy đoán nhiệm vụ câu hỏi – – Xung phong trả lời câu hỏi trả lời câu hỏi GV gọi tên – Ghi chép phần nội dung kiến thức GV trình bày Khuyến khích HS xung phong trả lời câu hỏi Sau HĐ – Cung cấp kiến thức phần nội dung Hoạt động Giới thiệu tên (10 phút, tiết 2) a) Mục tiêu - Nêu khái niệm tên, tên chuẩn, tên dành riêng (từ khố), tên người lập trình đặt b) Sản phẩm - HS trình bày khái niệm tên, phân biệt loại tên c) Nội dung hoạt động Thảo luận nhóm 10 phút, ghi vào giấy trả lời câu hỏi GV cử đại diện nhóm trình bày giáo viên u cầu: Tên gì? Có loại tên, cho ví dụ phân biệt loại tên d) Tổ chức dạy học Hoạt động thực theo phương pháp dạy học “Tự học” sau: Bước 1: Lập kế hoạch mục tiêu (2 phút) - Xác định thời gian cần hoàn thành hoạt động - Xác định yêu cầu giáo viên khái niệm tên, tên dành riêng, tên chuẩn, tên người lập trình đặt Phân biệt loại tên Bước 2: Tìm kiếm tài liệu (5 phút) - Tham khảo Internet SGK để hoàn thành yêu cầu GV Bước 3: Tự kiểm tra kiến thức (2 phút) - Thực kiểm tra chéo theo yêu cầu GV chỉnh sửa có sai sót Bước 4: Học cách ghi nhớ (1 phút) - Ghi nhớ nội dung kiến thức vừa học Hoạt động Giới thiệu biến (15 phút, tiết 2) a) Mục tiêu - Nêu khái niệm biến - Trình bày quy định tên, biến ngơn ngữ lập trình cụ thể b) Sản phẩm - HS trình bày khái niệm biến Trình bày quy định tên, biến ngôn ngữ lập trình C++ c) Nội dung hoạt động GV đưa ví dụ: Để viết chương trình giải phương trình bậc hai ta cần khai báo tên sau: a,b,c ba tên dùng để lưu ba hệ số phương trình - x1,x2 hai tên dùng để lưu nghiệm ( có) - Delta tên dùng để lưu giá trị delta Vậy theo em gì, biến gì? d) Tổ chức dạy học Hoạt động thực theo phương pháp dạy học “Tự học” sau: Bước 1: Lập kế hoạch mục tiêu (3 phút) - Xác định thời gian cần hoàn thành hoạt động - Xác định yêu cầu giáo viên khái niệm biến Phân biệt biến Bước 2: Tìm kiếm tài liệu (7 phút) - Tham khảo Internet SGK để hoàn thành yêu cầu GV Bước 3: Tự kiểm tra kiến thức (3 phút) - Thực kiểm tra chéo theo yêu cầu GV chỉnh sửa có sai sót Bước 4: Học cách ghi nhớ (3 phút) - Ghi nhớ nội dung kiến thức vừa học Hoạt động Giới thiệu biến (15 phút, tiết 2) a) Mục tiêu - Nêu khái niệm biến - Trình bày quy định tên, biến ngơn ngữ lập trình cụ thể b) Sản phẩm - HS trình bày khái niệm biến Trình bày quy định tên, biến ngơn ngữ lập trình C++ c) Nội dung hoạt động GV đưa ví dụ: Để viết chương trình giải phương trình bậc hai ta cần khai báo tên sau: a,b,c ba tên dùng để lưu ba hệ số phương trình - x1,x2 hai tên dùng để lưu nghiệm ( có) - Delta tên dùng để lưu giá trị delta Vậy theo em gì, biến gì? d) Tổ chức dạy học Hoạt động thực theo phương pháp dạy học “Tự học” sau: Bước 1: Lập kế hoạch mục tiêu (3 phút) - Xác định thời gian cần hoàn thành hoạt động - Xác định yêu cầu giáo viên khái niệm biến Phân biệt biến Bước 2: Tìm kiếm tài liệu (7 phút) - Tham khảo Internet SGK để hoàn thành yêu cầu GV Bước 3: Tự kiểm tra kiến thức (3 phút) - Thực kiểm tra chéo theo yêu cầu GV chỉnh sửa có sai sót Bước 4: Học cách ghi nhớ (2 phút) - Ghi nhớ nội dung kiến thức vừa học Hoạt động 6: Kiểm tra, đánh giá chủ đề (20 phút, tiết 2) a) Mục tiêu - Củng cố lại kiến thức HS chủ đề b) Sản phẩm - HS đạt đượcnội dung kiến thức cần đạt chủ đề c) Nội dung hoạt động Câu hỏi trắc nghiệm Học sinh chọn đáp án xác Câu 1: Ngơn ngữ lập trình A Phương tiện soạn thảo văn B Ngôn ngữ C, Pascal C Phương tiện diễn đạt thuật toán D Phương tiện diễn đạt thuật tốn để máy tính thực cơng việc Câu 2: Phát biểu sai là: A Lập trình để giải tốn viết chương trình B Lập trình chương trình hai khái niệm tương đương mơ tả thuật tốn ngơn ngữ lập trình C Chương trình tạo thành từ tổ hợp câu lệnh theo trình tự định D Chương trình chưa xác test Câu 3: Ngôn ngữ gần với ngôn ngữ tự nhiên A Ngôn ngữ máy B Hợp ngữ C Ngôn ngữ bậc thấp D Ngôn ngữ bậc cao Câu 4: Phát biểu sai A Chương trình dịch cho phép chuyển chương trình viết ngơn ngữ lập trình bậc cao sang chương trình ngơn ngữ máy để máy thực mà bảo tồn ý nghĩa chương trình nguồn B Chương trình dịch giúp người lập trình lập trình ngôn ngữ gần với tự nhiên C Chương trình dịch giúp tìm lỗi chương trình nguồn D Một ngơn ngữ lập trình có chương trình thơng dịch biên dịch Câu 5: Phát biểu sai thông dịch biên dịch là: A Chương trình dịch ngơn ngữ lập trình bậc cao gọi biên dịch cịn thơng dịch chương trình dịch hợp ngữ B Một ngơn ngữ lập trình có chương trình thơng dịch biên dịch C Biên dịch dịch chương trình mà chưa thực D Biên dịch thông dịch kiểm tra tính đắn câu lệnh Câu 6: Chọn tên A Baitap* B Hoc tin C Hoctin D 11bai Câu 7: Tên dành riêng A n B giatri C include D “hang” Câu 8: Tên chuẩn A n B sqrt C include D if Câu 9: Tên người lập trình đặt A ent B sqrt C define D if Câu 10: Biểu diễn biểu diễn C++ A -15A B “23” C 6.23 D true Câu 11: Hằng số A “a” B “23” C 6.23 D true Câu 12: Hằng logic A 4E-17 B “true” C 6.23 D false Câu 13: Hằng xâu A 23 B “true” C 6.23 D false Câu 14: Hằng logic A đặt cặp dấu nháy đơn B gồm số thực số nguyên C Có giá trị : true false D ký tự Đáp án 1D 2A 9A 10 A d) Tổ chức dạy học 3D 11 C 4B 12 D 5A 13 B 6C 14 C 7C 8B Hoạt động thực theo phương pháp dạy học “Phát giải vấn đề” sau: Bước 1: Tiếp cận vấn đề (3 phút) GV nêu tập yêu cầu HS cần thực Tình có vấn đề bước thể điểm sau: – HS cịn lúng túng chưa quen với khâu xác định đáp án Các phương án câu gần giống gần giống nội dung kiến thức nên học sinh đâp đáp án xác – Sau xác định đáp án, HS khó khăn củng cố kiến thức than học ghi nhớ Bước 2: Lựa chọn giải pháp (7 phút) GV gợi ý cho HS lựa chọn giải pháp thông qua kĩ thuật “vấn đáp tìm tịi” Giải pháp gồm cơng việc chính: Xác định vấn đề loại trừ đáp án sai Bước 3: Thực giải pháp (7 phút) GV khuyến khích HS tự thực chọn đáp án GV gợi ý, hướng dẫn HS yếu Việc gợi ý, hướng dẫn thực “vấn đáp tìm tịi” Bộ câu hỏi gợi ý, định hướng cho kĩ thuật thuật “vấn đáp tìm tòi” để giải yêu cầu Bước 4: Đánh giá, tìm kiếm sâu, mở rộng giải pháp (5 phút) GV giới thiệu khuyến khích HS tìm thêm đáp án tương tự (nếu có) CHỦ ĐỀ I MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGƠN NGỮ LẬP TRÌNH (tiếp theo) I MỤC TIÊU Về kiến thức - Biết ngơn ngữ lập trình có ba thành phần - Biết số khái niệm: tên, tên chuẩn, tên dành riêng (từ khóa), biến Về kĩ - Phân biệt tên, hằng, biến - Biết đặt tên Về thái độ - Chủ động tìm hiểu khái niệm Năng lực hướng tới - Ham muốn học ngôn ngữ lập trình cụ thể để có khả giải tốn máy tính điện tử II TỔ CHỨC CÁC HOẠT ĐỘNG HỌC TẬP Ổn định lớp Kiểm tra cũ: Có Tiến trình học 3.1 Hoạt động khởi động (1) Mục tiêu: Giúp học sinh hệ thống lại kiến thức phần 1, 2, có nhu cầu tìm hiểu nội dung sơ đồ tư mà nhóm chuẩn bị trước nhà (2) Phương pháp/kĩ thuật dạy học: Vấn đáp (3) Hình thức tổ chức hoạt động: Làm việc cá nhân (4) Phương tiện dạy học: SGK, Projector, máy tính (5) Kết quả: Học sinh trả lời câu hỏi GV mong muốn tìm hiểu nội dung sơ đồ tư mà nhóm chuẩn bị trước nhà Nội dung hoạt động Hoạt động giáo viên (?) Ngôn ngữ lập trình gì? có loại? kê tên? Khái niệm lập trình? - Gọi HS khác nhận xét, bổ sung - Nhận xét, đánh giá, cho điểm (?) Chương trình dịch gì? Phân biệt thơng dịch biên dịch? Cho biết tên chủ đề? - Gọi HS khác nhận xét, bổ sung - Nhận xét, đánh giá, cho điểm (?) Các nhóm treo sơ đồ tư chuẩn bị? - Nhận xét, cộng điểm cho nhóm làm tốt dẫn Hoạt động cuả học sinh - Gợi nhớ trả lời - Nhận xét, bổ sung -Lắng nghe, quan sát ghi nhớ Nội dung - Ngơn ngữ lập trình - Lập trình - Chương trình dịch - Thơng dịch - Biên dịch - Gợi nhớ trả lời - Nhận xét, bổ sung -Lắng nghe, quan sát ghi nhớ - Treo kết - Lắng nghe, ghi nhớ dắt vào 3.2 Hình thành kiến thức 3.2.1 Các thành phần ngơn ngữ lập trình (1) Mục tiêu: Giúp học sinh biết thành phần ngôn ngữ lập trình (2) Phương pháp/kĩ thuật dạy học: Đàm thoại, phát (3) Hình thức tổ chức hoạt động: Làm việc cá nhân, thảo luận nhóm (4) Phương tiện dạy học: SGK, Projector, máy tính (5) Kết quả: Học sinh biết thành phần ngôn ngữ lập trình Nội dung hoạt động Hoạt động giáo viên - Lấy sơ đồ treo lên (?) NNLT có thành phần bản? kể tên? - Gọi Hs khác nhận xét, bổ sung - Nhận xét, chốt nội dung (?) Bảng chữ gì? - Nhận xét, chốt nội dung (?) Bảng chữ Pascal bao gồm kí tự nào? - Nhận xét, chốt nội dung - Lưu ý: Các NNLT khác có khác bảng chữ lập trình khơng sử dụng kí tự ngồi kí tự quy định minh họa cụ thể - Dựa vào sơ đồ giới thiệu chi tiết cú pháp NNLT (?) Tham khảo SGK cho biết ngữ nghĩa gì? - Nhận xét, chốt nội dung Hoạt động cuả học sinh - Quan sát trả lời - Nhận xét bổ sung - Lắng nghe, ghi - Tham khảo SGK trả lời - Lắng nghe, ghi - Tham khảo SGK trả lời - Lắng nghe, ghi Nội dung Các thành phần ngơn ngữ lập trình Có thành phần: + Bảng chữ + Cú pháp + Ngữ nghĩa a) Bảng chữ - Là tập kí tự dùng để viết chương trình - Bảng chữ Pascal gồm chữ tiếng Anh hoa thường a, b, c, d,….Các chữ số: 0, 1, 2, … Các kí tự đặc biệt: + - * / = < > []… - Lắng nghe, quan sát ghi nhớ - Quan sát, lắng nghe ghi - Tham khảo SGK trả lời - Lắng nghe, ghi b) Cú pháp Là quy tắc để viết chương trình c) Ngữ nghĩa Xác định ý nghĩa thao tác cần thực hiện, ứng với tổ hợp kí tự dựa vào ngữ cảnh 10 N := N+1; End; Writeln(‘Tong la: ’, S:8:4); Readln; End Ví Dụ 2: Tìm ƯCLN số nguyên dương M N Chương trình SGK – T 48 - Input: M, N; Output: ƯCLN - Lên bảng viết thuật toán - Chú ý nghe ghi - Lên bảng - Chú ý nghe ghi - Xác định TìmƯCLN - Xây dựn - Nhận xé phân tích - Yêu cầu đặt thuật t - Nhận xé C CỦNG CỐ - Cấu trúc lặp dạng cấu trúc lặp; - Cú pháp hoạt động câu lệnh For-do, while-doi; - Ý nghĩa câu lệnh; D HƯỚNG DẪN TỰ HỌC Ở NHÀ - Về nhà làm tập sách tập tập SGK Tin học 11 - Học bài, đọc trước nội dung V RÚT KINH NGHIỆM BGH kí duyệt Ngày 22 tháng TTCM ký Nghiêm Tha Tiết theo PPCT: 16 Ngày soạn : 25/11/ Ngày giảng: / 11/ - - BÀI TẬP I MỤC TIÊU 90 Về kiến thức: - Hiểu rõ cấu trúc lặp - Biết vận dụng đắn cấu trúc lặp vào tình cụ thể Về kĩ năng: - Mô tả số thuật toán số toán đơn giản có sử dụng lệnh lặp - Viết câu lệnh lặp Về thái độ: - Kích thích học sinh thêm u thích lập trình; - Học tập chủ động, tích cực Năng lực hướng tới: - Diễn đạt câu lệnh lặp với số lần chưa biết trước While - do; - Mơ hình hóa dạng tốn có sử dụng cấu trúc lặp với số lần chưa biết trước II PHƯƠNG PHÁP - Thuyết trình Đàm thoại gợi mở - Nhóm nhỏ, nêu VĐ PHVĐ III PHƯƠNG TIỆN Giáo viên - KHBD, SGK, SGV - Tổ chức hoạt động nhóm Học sinh - SGK, ghi Đọc trước… IV TIẾN TRÌNH BÀI HỌC A HOẠT ĐỘNG KHỞI ĐỘNG */ Hoạt động 1: Kiểm tra cũ Mục tiêu: Học sinh nhớ kiến thức Phương pháp, kỹ thuật: Vấn đáp Hình thức tổ chức hoạt động: Cá nhân Phương tiện dạy học: Câu hỏi tự luận Sản phẩm: Học sinh trả lời câu hỏi mà giáo viên đưa Nội dung hoạt động: Viết cú pháp câu lệnh lặp kiểm tra điều kiện trước? Lấy ví dụ minh họa? Vẽ sơ đồ hoạt động câu lệnh lặp kiểm tra điều kiện trước? Nêu hoạt động câu lệnh? B HOẠT ĐỘNG LUYỆN TẬP VÀ VẬN DỤNG */ Hoạt động 2: Bài tập Mục tiêu: Giúp học sinh vận dụng kiến thức học cấu trúc lặp vào toán cụ thể Phương pháp, kĩ thuật: Thảo luận, vấn đáp 91 Hình thức tổ chức hoạt động: Cá nhân, nhóm Phương tiện dạy học: SGK, SBT Tin học 10 Sản phẩm: Học sinh làm tập 5, SGK – T51 Nội dung hoạt động NỘI DUNG Bài 5: Lập trình tính a - Chương trình Program Bai_5a; Uses Crt; Var Y: Real; N: Byte; Begin Clrscr; Y:=0; For N:=1 To 50 Do Y:= Y + 1.0 * N/(N+1); Writeln(‘Y = ’, Y:6:2); Readln End HOẠT ĐỘNG CỦA TRÒ - Chia lớp thành nhóm - Chú ý hướng dẫn giáo viên + Bài toán: + Sử dụng cấu trúc lặp với số lần biết trước: Số lần lặp cộng vào HOẠT ĐỘNG CỦA THẦY - Chia nhóm HS - GV hướng dẫn HS xây dựng chương trình, gợi ý để HS hiểu 5a gần giống với tính tổng (Tong_1a, Tong_1b) + Diễn đạt tường minh toán 5.a + Sử dụng cấu trúc lặp nào? tổng Y giá trị + Biến đếm: n + Giá trị đầu: + Giá trị cuối: 50 + Câu lệnh: + Các biến: n, y + Kiểu liệu: n- kiểu ngun; y – kiểu thực + Khơng có câu lệnh nhập liệu + Xuất liệu giá trị y + Biến đếm câu lệnh đối tượng toán? + Giá trị đầu vòng lặp bao nhiêu? + Giá trị cuối vòng lặp bao nhiêu? + Câu lệnh lặp gì? + Các biến cần 92 b Cho đến - Chương trình Program Bai5b; Uses Crt; Var e: Real; u, n: LongInt; Begin Clrscr; e:=1; n:=1; u:=1; While not(1/u< 2E-6) Do Begin e:=e + 1.0/u; n:=n+1; u:=u*n; End; Writeln(‘e(n) = ’, e:8:4); Readln End - HS thảo luận theo nhóm, viết chương trình vào bảng phụ (HS có thê sử dụng dạng câu lệnh lặp – tiến lùi) - Chú ý, ghi chép - Chú ý hướng dẫn giáo viên khai báo chương trình? Kiểu liệu biến? + Câu lệnh nhập/xuất liệu? - Nhận xét, đánh giá kết nhóm + Sử dụng cấu trúc lặp với số lần chưa biết trước (kiểm tra điều kiện trước) + Khi biểu thức chưa thỏa mãn lặp việc cộng vào tổng e + n! = 1.2….n + 2E-6 + Chú ý, suy nghĩ + e=1; n=1; u=1; - Kết luận - GV phát vấn, hướng dẫn HS xây dựng chương trình, gợi ý để HS viết câu lệnh sử dụng cấu trúc lặp + Sử dụng cấu trúc lặp nào? + Biểu thức điều kiện thỏa mãn yêu cầu tốn? + Cơng thức tính n! gì? + Cách biểu diễn số thực dạng dấu phảy động? 93 + not ((1/u)=2E-6 + Tổng e Tăng n lên giá trị Tính tích giai thừa u + Câu lệnh: Xuất liệu giá trị e (khơng nằm vịng lặp) - Gọi HS lên bảng viết chương trình, HS cịn lại viết chương trình vào - Chú ý, ghi chép + Hướng dẫn sử dụng đối tượng cho phù hợp: e – lưu trữ giá trị tổng; n lưu giá trị thay đổi cơng thức tính giai thừa; u lưu trữ giá trị giai thừa Giá trị n u làm thay đổi giá trị điều kiện + Giá trị e, n, u trước tham gia vòng lặp bao nhiêu? + Biểu thức điều kiện gì? + Câu lệnh sau từ khóa gì? + Câu lệnh nhập/xuất liệu? - Nhận xét, ghi điểm - Kết luận C CỦNG CỐ - Nhắc lại kiến thức học; D HƯỚNG DẪN TỰ HỌC Ở NHÀ - Trả lời câu hỏi sách giáo khoa sách tập - Hướng dẫn học sinh giải 7,8 SGK 94 Bài 7: Nhập từ bàn phím tuổi Cha tuổi (hiện tuổi cha lớn lần tuổi tuổi cha tuổi 25 tuổi) Đưa hình câu trả lời cho câu hỏi “Bao nhiêu năm tuổi cha gấp đôi tuổi con” - Phát vấn: Cấu trúc lặp giải toán? Cấu trúc câu lệnh lặp nào? Lặp với số lần chưa biết trước (kiểm tra điều kiện trước) Câu lệnh While - Điều kiện để xảy q trình lặp gì? Tuổi cha chưa gấp đơi tuổi Biểu thức điều kiện gì? Not(t_cha = 2* t_con) Trong đó: t_cha: Tuổi cha; t_con: Tuổi Câu lệnh sau từ khóa gì? Sau năm tuổi cha tăng lên N=N+1; T_cha= T_cha+1; T_con=T_Con+1; Xuất liệu hình? Số năm lưu trữ biến N Bài HS phân tích theo hướng tương tự để viết chương trình - Đọc trước 11 V RÚT KINH NGHIỆM Ngày 29 tháng 11 năm TTCM ký duyệt Nghiêm Thanh Liễu Tiết theo PPCT: 17 Ngày soạn : 26/11/ Ngày giảng: / 11/ - - ÔN TẬP 95 I MỤC TIÊU Về kiến thức: - Giúp học sinh củng cố lại kiến thức học số khái niệm, chương trình đơn giản cấu trúc rẽ nhánh Về kĩ năng: - Viết chương trình giải tốn đơn giản, tốn có cấu trúc rẽ nhánh Về thái độ: - Kích thích học sinh thêm u thích lập trình; - Học tập chủ động, tích cực Năng lực hướng tới: - Mơ hình hóa dạng tốn có sử dụng cấu trúc câu lệnh phù hợp II PHƯƠNG PHÁP - Thuyết trình Đàm thoại gợi mở - Nhóm nhỏ, nêu VĐ PHVĐ III PHƯƠNG TIỆN Giáo viên - KHBD, SGK, SGV - Tổ chức hoạt động nhóm Học sinh - SGK, ghi Đọc trước… IV TIẾN TRÌNH BÀI HỌC A HOẠT ĐỘNG KHỞI ĐỘNG */ Hoạt động 1: Kiểm tra cũ Mục tiêu: Học sinh nhớ kiến thức Phương pháp, kỹ thuật: Vấn đáp Hình thức tổ chức hoạt động: Cá nhân Phương tiện dạy học: Câu hỏi tự luận Sản phẩm: Học sinh trả lời câu hỏi mà giáo viên đưa Nội dung hoạt động: Kiểm tra B HOẠT ĐỘNG LUYỆN TẬP VÀ VẬN DỤNG */ Hoạt động 2: Ôn tập Mục tiêu: HS nắm vững kiến thức Phương pháp, kĩ thuật: Thảo luận, vấn đáp Hình thức tổ chức hoạt động: Cá nhân, nhóm Phương tiện dạy học: KHBD, máy tính, máy chiếu Sản phẩm: HS trả lời câu hỏi Nội dung hoạt động NỘI DUNG HOẠT ĐỘNG CỦA TRÒ HOẠT ĐỘNG CỦA THẦY I Lý thuyết HS: Trả lời Nhắc hệ thống 96 - Khái niệm: Lập trình, chương trình dịch - Các thành phần NNLT - Phân biệt loại tên Tên dành riêng (Từ khoá) Tên chuẩn Tên người lập trình đặt - Phân biệt biến - Cấu trúc chung: + Phần khai báo: tên chương trình, thư viện, biến, hằng… + Phần thân chương trình - Các kiểu liệu chuẩn - Các phép toán, biểu thức, hàm số học chuẩn, biểu thức quan hệ, biểu thức lôgic Pascal - Câu lệnh gán - Các thủ tục chuẩn đơn giản - Các thao tác làm việc với Pascal - Cấu trúc rẽ nhánh, câu lệnh if/then câu lệnh ghép Pascal - Lập trình - Chương trình dịch - Bảng chữ cái, cú pháp ngữ nghĩa - Bảng chữ Tiếng Anh, chữ số, kí tự khác - Phân biệt loại tên, lấy ví dụ cụ thể cho loại tên - Đặt tên quy ước Pascal - Phân biệt biến, lấy ví dụ cụ thể - Mỗi chương trình nói chung gồm thành phần: + Phần khai báo gồm: Khai báo tên chương trình Khai báo thư viện Khai báo Khai báo biến + Phần thân - kiểu liệu chuẩn: nguyên, thực, kí tự, logic - Các phép toán số học, quan hệ, logic - Các hàm số học chuẩn: bình phương, bậc 2… - Biểu thức quan hệ, logic - Tên biến := Biểu thức; - Các thủ tục chuẩn: nhập/xuất liệu - Các thao tác: F2, Alt+F9, Ctrl+F9, Alt+F3, Alt+X - Câu lệnh IF – THEN dạng thiếu đủ - Câu lệnh ghép lại khái niệm bản: + Khái niệm lập trình, chương trình dịch? + Các thành phần ngơn ngữ lập trình? + Nêu tập kí tự bảng chữ cái? + Khái niệm tên, tên chuẩn, tên dành riêng, tên người lập trình đặt, biến NNLT Pascal + Cấu trúc chung chương trình đơn giản thành phần chương trình Pascal? + Các kiểu liệu chuẩn, phép toán, biểu thức, hàm số hoc chuẩn, biểu thức quan hệ, biểu thức lôgic Pascal - Chú ý + Input: a,b,c; 97 II Bài tập Bài 1: Nhập số nguyên a,b,c tìm số lớn (Max) số Program tim_max; Uses crt; var a, b, c, max : Integer; begin clrscr; write('Nhap a = '); read(a); write('Nhap b = '); read(b); write('Nhap c = '); read(c); max:=a; if (max B then Readln(A) else Readln(B); D If A > B then write(B) else write(A); Câu 5: Để nhập giá trị cho biến a;b;c ta sử dụng thủ tục: A readln(a, b,c); B readln(a;b;c); C readln(‘a,b,c’); D realn(a,b,c); Câu 6: Cho câu lệnh gán M:=12; N:=21; A:= (M mod = 0) and (N div = 1); Hỏi A có giá trị thuộc kiểu liệu giá trị nhận được? A Kiểu số có giá trị B Kiểu logic giá trị True C Kiểu logic giá trị False D Kiểu số có giá trị 16 Câu 7: Kiểu liệu có phạm vi giá trị từ đến kiểu liệu sau? A Kiểu Word B Kiểu LongInt C Kiểu Byte D Kiểu Integer Câu 8: Chọn câu đúng: A write(’gia tri cua x= ’) B write(’gia tri cua x=’ 2); C write(’gia tri cua x=’, 2); D write(gia tri cua x= 2); Câu 9: Khi chạy chương trình: Var S, i : Integer; Begin S := 0; i:=1; S := S + ; i:=i+1; write(S); End Kết nhận hình là? A B C D Câu 10: Cho S i biến nguyên Khi chạy đoạn chương trình S:=100; If Sy) and (y>3) thuộc loại biểu thức Pascal? A Biểu thức logic B Biểu thức quan hệ C Biểu thức số học D Một loại biểu thức khác Câu 13: Câu lệnh if sau đúng: A if a= then a= d+1 else a= d+2; B if a= then a:= d+1 else a:= d+2 C if a= then a:= d+1 else a:= d+2; D if a= then a:= d+1; else a:= d+2; Câu 14: Để tính giá trị biểu thức x=|a+b| Câu lệnh đúng? A x:=a+b; B x:=abs(a) C x:=abs a+b; D +b; x:=abs(a+b); Câu 15: Cho dãy câu lệnh gán z:=3; z:=z-1; y:=sqr(z)-3; Sau thực dãy câu lệnh y có giá trị bao nhiêu? A B C D Câu 16: Một chương trình viết ngơn ngữ lập trình Pascal gồm có phần: A B C D Câu 17: Đoạn chương trình sau đưa hình kết nào: a:=8; If a mod = then Write(’1’) else Write(’0’); A B Khơng đưa C D Câu 18: Cách khai báo biến khai báo sau: A Var: x,i: integer; B Var x;i: char; C Var x,y: Read;D Var x,i: boolean; Câu 19: Xét khai báo sau: Var x, y: Integer; c: Char; r: Real; kt: Boolean; Hỏi nhớ cấp cho tất biến Byte? A 12 byte B 13byte C 10 byte D 11 byte Câu 20: Những tên tên sau thuộc loại tên dành riêng Pascal? A PROGRAM, BEGIN, TYPE, CONST, SQRT B VAR, BEGIN, END, A, B, DELTA C BAI_TAP, BEGIN, TYPE, CONST, USES D PROGRAM, VAR, BEGIN, TYPE, CONST Câu 21: Có loại ngơn ngữ lập trình? A B C D Câu 22: Cú pháp khai báo biến NNLT Pascal là? A VAR :; B VAR :; C VAR :=; D CONST :; 102 Câu 23: Chọn từ (cụm từ) thích hợp điền vào chỗ trống: “Chương trình dịch chương trình đặc biệt có … chuyển đổi chương trình viết từ … thành chương trình thực máy tính” A vai trị, hợp ngữ; B chương trình, hợp ngữ; C chức năng, NNLT bậc cao; D vai trò, NNLT bậc cao Câu 24: Kiểu liệun có phạm vi giá trị nguyên phạm vi từ -32768 đến +32767? A Integer B Longint C Word D Byte Câu 25: Đâu biểu diễn NNLT Pascal biểu diễn sau: A A18’ B 3.14 C abc D 123,99 Câu 26: Những câu lệnh sau sai cú pháp NNTP Pascal? A a=20/2; B a:=20; C x:=(a+b)*c; D 123.99:=m; Câu 27: Cách viết để tính giá trị bậc hai số a cho trước NNLT Pascal? A exp(a) B spr(a) C sqrt(a) D abs(a) Câu 28: Trong cấu trúc chương trình ngn ngữ lập trình Pascal, phần có khơng có? A Phần khai báo B Phần thân C A B sai D A B Câu 29: Biểu thức (5+3>=8) and (6 div 3>3) trả giá trị sau đây? A ’1’ B ’0’ C true D false Câu 30: Biểu thức điều kiện sau dùng để kiểm tra tam giác ABC có độ dài cạnh a, b, c (a>0, b>0, c>0) có tam giác cân hay khơng? A a=b B (a=b) and (b=c) and (a=c) C (a=b) and (a=c) D (a=b) and (b=c) and (a=c) Câu 31: Câu lệnh sau cú pháp với a, b, x biến kiểu nguyên? A x:=a/b; B x:=abs(a+b; C x:=a/b D x:=aps(a+b); Câu 32: Câu lệnh: a:=16; a:=a-10; if a mod = then m:=a else m:=a+1; giá trị m là? A B 10 C D Câu 33: Tên ngôn ngữ lập trình Pascal khơng chứa kí tự sau đây? A Kí tự chữ tiếng Anh B Kí tự trắng (dấu cách) C Kí tự chữ số thập phân D Kí tự ‘_’ V HƯỚNG DẪN CHẤM BÀI Câ Câ Câ Câ Câ Câ Câ Câ Câ Câ Câ u1 u2 u3 u4 u5 u6 u7 u8 u9 u u 10 11 D B B B B B A C D A D Câ Câ Câ Câ Câ Câ Câ Câ Câ Câ Câ 103 u u u u 12 13 14 15 A C D B Câ Câ Câ Câ u u u u 23 24 25 26 C A B D VI RÚT KINH NGHIỆM u 16 D Câ u 27 C u 17 A Câ u 28 C u 18 D Câ u 29 D u 19 A Câ u 30 C u 20 D Câ u 31 A u 21 D Câ u 32 D u 22 B Câ u 33 B Ngày tháng 12 năm TTCM ký duyệt Nghiêm Thanh Liễu 104 ... ghi 23 - Lắng nghe, ghi nhớ 3.2.2 Biểu thức số học (1) Mục tiêu: Học sinh có mong muốn tìm hiểu biểu thức số học Pascal (2) Phương pháp/kĩ thuật dạy học: Đàm thoại, phát hiện, vấn đáp (3) Hình thức... Làm ví dụ - Lắng nghe, ghi nhớ 3.2.3 Hàm số học chuẩn (1) Mục tiêu: Học sinh có mong muốn tìm hiểu hàm số học chuẩn Pascal (2) Phương pháp/kĩ thuật dạy học: Đàm thoại, phát hiện, vấn đáp (3) Hình... ghi 31 - Lắng nghe, ghi nhớ 3.2.2 Biểu thức số học (1) Mục tiêu: Học sinh có mong muốn tìm hiểu biểu thức số học Pascal (2) Phương pháp/kĩ thuật dạy học: Đàm thoại, phát hiện, vấn đáp (3) Hình thức