www thuvienhoclieu com Tiết 1 PPCT Ngày soạn Ngày dạy CHƯƠNG I MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH BÀI 1 KHÁI NIỆM LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH A MỤC ĐÍCH VÀ YÊU CẦU 1 Mục đích Ôn l[.]
Tiết 1_PPCT Ngày soạn: Ngày dạy: CHƯƠNG I: MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGƠN NGỮ LẬP TRÌNH BÀI 1: KHÁI NIỆM LẬP TRÌNH VÀ NGƠN NGỮ LẬP TRÌNH A MỤC ĐÍCH VÀ U CẦU Mục đích: - Ôn lại kiến thức học lớp 10 thuật toán - Giới thiệu khái niệm chương trình nguồn, chương trình dịch chương trình đích - Giới thiệu số ngơn ngữ lập trình thơng dụng Yêu cầu: - Học sinh nắm khái niệm chương trình nguồn, chương trình dịch chương trình đích B PHƯƠNG PHÁP GIẢNG DẠY - Lấy học sinh làm trung tâm, đặt vấn đề cho trường hợp sử dụng thực tế từ giúp em nắm bắt vấn đề tốt - Đặt câu hỏi gợi mở giúp học sinh hiểu vấn đề C KIẾN THỨC TRỌNG TÂM Trong cần cung cấp cho học sinh kiến thức sau: - Các khái niệm chương trình nguồn, chương trình dịch chương trình đích - Các khái niệm thơng dịch biên dịch D PHƯƠNG TIỆN DẠY HỌC - Sử dụng máy Projector - Bảng đen, phấn trắng E NỘI DUNG GIẢNG DẠY I ĐẶT VẤN ĐỀ CHO BÀI GIẢNG ( 5ph ) Thông tin đưa vào máy tính, máy tính xử lý cho ta kết mong muốn Vậy nhờ vào đâu mà máy tính xử lý thơng tin đó? Để máy tính xử lý thơng tin phải lập trình Bài học hơm ta tìm hiểu ngơn ngữ lập trình có loại ?II NỘI DUNG BÀI HỌC Thời Nội dung ghi bảng gian BÀI 1: KHÁI NIỆM LẬP TRÌNH VÀ NGƠN NGỮ LẬP TRÌNH 10 ph Thuật tốn: Có hai dạng để diễn tả thuật tốn: Liệt kê Dùng sơ đồ khối VD: so sánh a b Hoạt động GV - Ghi học lên bảng - Trước tìm hiểu ngơn ngữ lập trình, ta ơn lại phần thuật tốn - Em nhắc lại khái niệm thuật toán ? - Có dạng để diễn tả thuật tốn? - Em diễn tả thuật toán so sánh số a b theo hai dạng Hoạt động HS Học sinh theo dỏi, ghi chép trả lời trên? - Như muốn máy tính hiểu xử lý thơng tin xác mà ta nhập vào người cần phải lập trình - Mọi tốn có thuật tốn giải máy tính điện tử, bao gồm bước mà ta học? 10 ph 15 ph - Bước cuối lập trình, Để giải tốn ta thực lập trình gì? em nêu khái niệm lập trình? bước sau: - Như sơ đồ diễn tả thuật toán 1) Xác định toán trên, CTDL cách lưu trữ giá trị 2) Diễn tả thuật tốn a b Cịn câu lệnh để mơ tả 3) Viết chương trình 4) Chạy kiểm tra chương trình thuật tốn Pascal sau: Khái niệm lập trình: Lập trình sử dụng CTDL câu lệnh ngôn ngữ lập trình cụ thể để mơ tả liệu diễn đạt thao tác thuật toán Học sinh theo dỏi, ghi chép trả lời Học sinh theo dỏi, ghi chép trả lời If a > b then writeln(‘max=’,a) Else writeln(‘max =’,b); - Chương trình viết ngơn ngữ pascal ngơn ngữ bậc cao chương trình nguồn Quá trình chuyển đổi chương để máy tính hiểu xử lý phải thơng qua trình chương trình dịch để chuyển sang CT đích CT nguồn CT dịch chương trình đích ngơn ngữ máy ta có q trình chuyển đổi * CT nguồn: - Là CT viết ngôn ngữ bậc cao sau: - Được nhiều người sử dụng làm - Em nêu đặc điểm CT Học sinh nguồn? cơng cụ lập trình theo dỏi, - Thực nhiều loại ghi chép máy tính khác trả lời * CT dịch: - Có chức chuyển đổi CT viết - Em nêu chức CT ngôn ngữ bậc cao thành dịch? chương trình ngơn ngữ máy Có hai loại Thơng dịch (Interpreter): Là trình dịch lặp lại nhiều lần - Chương trình dịch có hai loại thơng dịch biên dịch Các em kết thúc chương trình Học sinh xem VD SGK Các bước lặp: theo dỏi, 1) Kiểm tra tính đắn - Thơng dịch gì? ghi chép câu lệnh chương - Hiện có số ngơn ngữ trả lời lập trình thơng dụng như: trình nguồn 2) Chuyển đổi câu lệnh thành hay nhiều câu lệnh - Biên dịch gì? tương ứng ngơn ngữ máy 3) Thực câu lệnh vừa - Nêu đặc điểm thông dịch biên dịch chuyển đổi Biên dịch (compiler): Là trình dịch lặp lần Các bước lặp: 1) Duyệt, phát lỗi, kiểm tra tính đùng đắn câu lệnh CT nguồn 2) Dịch toàn CT nguồn thành CT đích lưu trữ để sử dụng lại cần thiết Chú ý: + Thơng dịch khơng có chương trình đích để lưu trữ + Biên dịch dịch lưu trữ để sử dụng sau * CT đích: ngơn ngữ máy * Pascal, Turbo C++ ngôn ngữ ứng dụng nhà trường phục vụ học lập trình sở * C#, C++ lập trình ứng dụng * ASP, ASP.net, J#, JAVA thiết kế Website Học sinh theo dỏi, ghi chép trả lời III CỦNG CỐ BÀI HỌC VÀ BÀI TẬP VỀ NHÀ (5 ph) Củng cố: Qua học HS nắm vững kiến thức trọng tâm sau: Khái niệm lập trình Khái niệm thơng dịch biên dịch Bài tập nhà: Khái niệm lập trình Khái niệm thơng dịch biên dịch Những phát biểu sai? A Output chương trình chương trình ngơn ngữ máy B Chương trình viết hợp ngữ Input hay Output chương trình dịch C Để biên soạn chương trình ngơn ngữ bậc cao sử dụng nhiều hệ soạn thảo văn khác D Chương trình dịch thành phần ngơn ngữ lập trình bậc cao Phát biểu đúng:Chương trình dãy lệnh tổ chức theo quy tắc xác định ngôn ngữ lập trình cụ thể A Trong chế độ thơng dịch câu lệnh chương trình nguồn dịch thành câu lệnh chương trình đích B Mọi tốn có chương trình để giải máy tính C Nếu chương trình nguồn có lỗi cú pháp chương trình đích có lỗi cú pháp Tiết 2_PPCT Ngày soạn: Ngày dạy: BÀI 2: CÁC THÀNH PHẦN CỦA NGƠN NGỮ LẬP TRÌNH A MỤC ĐÍCH VÀ U CẦU Mục đích: - Giúp học sinh hiểu thành phần ngơn ngữ lập trình: Bảng chữ cái, cú pháp ngữ nghĩa - Giới thiệu khái niệm tên, tên chuẩn, tên dành riêng Yêu cầu: - Học sinh ý học tập, tích cực xây dựng học - Học sinh phải ghi nhớ quy tắc đặt tên, biến ngơn ngữ lập trình B PHƯƠNG PHÁP GIẢNG DẠY - Lấy học sinh làm trung tâm, lấy VD cụ thể để học sinh nắm vững học C KIẾN THỨC TRỌNG TÂM Trong cần cung cấp cho học sinh kiến thức sau: - thành phần ngơn ngữ lập trình: bảng chữ cái, cú pháp ngữ nghĩa - Các quy tắc đặt tên, khái niệm biến D PHƯƠNG TIỆN DẠY HỌC - Hình ảnh minh họa - Bảng đen, phấn trắng E KIỂM TRA BÀI CŨ ( 5ph ) Nêu khái niệm thông dịch biên dịch, hai thành phần chươg trình dịch khác chỗ nào? Nêu bước thực thông dịch biên dịch F NỘI DUNG GIẢNG DẠY I ĐẶT VẤN ĐỀ CHO BÀI GIẢNG (3ph) Như em biết, người dùng hai loại ngôn ngữ ngơn ngữ nói ngơn ngữ viết Để máy tính làm việc giao tiếp cần có ngơn ngữ, ngơn ngữ lập trình Ngơn ngữ lập trình soạn thảo mơi trường lập trình tương ứng ngô ngữ Pascal soạn thảo môi trường Turbo Pascal, nhằm giải toán người u cầu Vậy ngơn ngữ lập trình có thành phần có quy tắc khơng Bài học hôm thầy giới thiệu cho em hiểu rõ vấn đề II NỘI DUNG BÀI HỌC Thời gian Nội dung ghi bảng Hoạt động GV Hoạt động HS - Ghi học lên bảng - Em cho biết ngôn ngữ Học sinh lập trình có thành phần, theo dỏi, ghi chép thành phần gì? Các thành phần trả lời Có thành phần: - Các ký tự sử dụng Chữ ngôn ngữ để viết Cú pháp chương trình Ngữ nghĩa - Nhìn vào bảng chữ em có thấy khác với chữ a) Chữ cái: Là tập ký tự dùng ngôn ngữ tự nhiên để viết chương trình khơng? - Ký tự chữ cái: ‘a’ ’z’,‘A’ ‘Z’ - Số thập phân: 0, 1, , 8, - Trong ngôn ngữ tự nhiên Học sinh - Các ký tự đặc biệt: #, $, -, +, sử dụng bảng chữ theo dỏi, Chú ý: phải có cú pháp VD ghi chép - Bảng chữ ngơn ngữ khác thành phần câu có chủ trả lời khác số ký tự: ngữ, vị ngữ VD: Pascal sử dụng dấu ‘’ - Trong ngơn ngữ lập trình C++ sử dụng dấu “”, \, ! cần phải có cú BÀI 2: CÁC THÀNH PHẦN CỦA NGƠN NGỮ LẬP TRÌNH 12 ph pháp - Em cho thầy biết cú pháp ngơn ngữ lập trình dùng để làm gì? - Cú pháp quy tắc để viết chương trình, dựa vào mà người lập trình chương c) Ngữ nghĩa: Là xác định ý nghĩa trình dịch biết tổ hợp ký tự bảng tổ hợp ký tự chương trình chữ hợp lệ Các em xem VD: A B nhận giá trị nguyên VD sau: X Y nhận giá trị thực ten a Ta sử dụng phép tốn ngơn ngữ Var x integer; lập trình sau: Ngồi cú pháp, ngôn A+B: cộng hai số nguyên ngữ lập trình cịn có ngữ X+Y: cộng hai số thực nghĩa Chú ý: - CT phát lỗi cú pháp - VD sau cho em hiểu rõ trước, lỗi ngữ nghĩa sau ngữ nghĩa - Khi lỗi cú pháp khơng cịn chương trình thực - Khi chương trình thực liệu cụ thể lỗi ngữ nghĩa - Em cho biết phát chương trình bắt đầu thực VD: chương trình dịch phát lỗi cú pháp dễ dàng Một số khái niệm hay khó khăn ngữ nghĩa? a) Tên Khái niệm: Tên dãy liên tiếp không 127 ký tự bao gồm chữ số, chữ dấu gạch - Để viết chương Quy tắc đặt tên: trình khơng cịn lỗi cú pháp ta b) Cú pháp: Là quy tắc để viết chương trình VD: ten a (khơng hợp lệ có khoảng trắng) Var x integer; (khơng hợp lệ thiếu dấu ‘:’) 20 ph Học sinh theo dỏi, ghi chép trả lời Học sinh theo dỏi, ghi chép trả lời VD: Khơng có khoảng trắng Không bắt đầu chữ số Không chứa ký tự đặc biệt 43c (tên sai) A_c (tên đúng) Ten_f (tên đúng) Hoa# (tên sai) Chú ý: - Tên dùng để quản lý phân biệt đối tượng chương trình - Để gợi nhớ nội dung đối tượng - Tên có loại: * Tên dành riêng (từ khóa): Dùng với ý nghĩa riêng xác định Khơng sử dụng với mục đích khác VD(SGK) * Tên chuẩn: Dùng với ý nghĩa định đó, sử dụng với mục đích khác VD(SGK) * Tên người lập trình tự đặt: Khơng trùng với tên dành riêng cần ý số quy tắc Học sinh cách đặt tên theo dỏi, ghi chép trả lời b) Hằng biến * Hằng: Hằng đại lượng có giá trị khơng thay đổi q trình thực chương trình Có loại hằng: + Hằng số học: số nguyên hay số thực: 3, -3, + Hằng logic: True False + Hằng xâu: Là chuỗi ký tự bảng mã ASCII, nằm cặp dấu nháy đơn ( ‘’ ) Pascal Chú ý: - Hằng dấu ‘’ Pascal “” VD: ‘‘s’’ có xâu ‘s’ - Hằng số thực E biểu diễn số mũ 10 VD: 2.1E-6 = x 10-6 -2.236E01 = -2.236 x 1001 = -22.36 - Có thể sử dụng Hexa, cần thêm $ trước giá trị biểu diễn: VD: $A116 = 16110 * Biến: Là đại lượng đặt tên, dùng để lưu trữ giá trị giá trị thay đổi q trình thực chương trình - Ngồi quy định phải đặt tên cho chương trình cần phải khai báo biến - Em xét xem VD sau VD có cách đặt tên đúng, sao? Học sinh theo dỏi, ghi chép trả lời - Các em xem VD SGK giải thích ký hiệu E số học - Em lấy VD để làm rõ khái niệm biến VD: A, B,tong biến nguyên A:=5; B:=6; Tong:=A+B; Tong:=A+B+A; Giá trị tổng thay đổi - Đoạn thích chương trình nhằm giúp người lập c) Chú thích trình nêu câu dẫn mà - Trong Pascal sử dụng cặp dấu không cần phải tuân thủ quy {và}hoặc (*và*) tắc ngôn ngữ lập trình - Chú thích khơng ảnh hưởng đến chương trình nguồn nên chương trình dịch bỏ qua III CỦNG CỐ BÀI HỌC VÀ BÀI TẬP VỀ NHÀ (5 ph) Củng cố: Qua học HS nắm vững kiến thức trọng tâm sau: thành phần ngơn ngữ lập trình Khái niệm quy tắc đặt tên Khái niệm ý nghĩa sử dụng biến Bài tập nhà: Các tập SGK Tiết 3_PPCT Ngày soạn: Ngày dạy: CÂU HỎI VÀ BÀI TẬP A MỤC ĐÍCH VÀ YÊU CẦU Mục đích: - Giúp học sinh ơn lại kiến thức học Yêu cầu: - Học sinh ý học tập, tích cực xây dựng học - Học sinh phải chuẩn bị kiến thức ôn nhà B PHƯƠNG PHÁP GIẢNG DẠY - Nêu tập, đặt câu hỏi gợi ý để HS nắm vững học C NỘI DUNG GIẢNG DẠY Câu 1: Trong chế độ biên dịch, chương trình dịch thơng suốt, hệ thống khơng báo lỗi Có thể khẳng định ta có chương trình hay chưa? Tại sao? (Chưa đúng, sai ngữ nghĩa) Câu 2: Trong chế độ thông dịch, giả sử 2/3 số câu lệnh chương trình thực Có thể khẳng định chương trình khơng cịn chứa lỗi cú pháp hay không? Tại sao? (Không thể khẳng định được, câu lệnh khác chưa kiểm tra) Câu 3: Sau chương trình dịch thơng suốt, khơng cịn lỗi cú pháp, có cần tiếp tục hiệu chỉnh, tức tìm sửa lỗi chương trình nguồn hay khơng? (Có: Vì cần KT ngữ nghĩa) Câu 4: Trong chương trình cịn có lỗi cú pháp, thơng thường trình biên dịch hay chương trình thơng dịch phát lỗi nhanh hơn? Vì sao? (Trình biên dịch phát lỗi nhanh có nhiệm vụ phát lỗi cú pháp đầu tiên) Câu 5: Hãy chọn biểu diễn biểu diễn đây: A) end B) ‘a078’ C) 78 D) *63 E) 5.63 F) -96 Câu 6: Hãy chọn biểu diễn tên biểu diễn đây: A) 75 B) abcd C) 78ab D) ab68 E) ‘abc’ F) (xyz) Câu 7: Hãy chọn đáp án từ khóa (tên dành riêng) Pascal: A) begin B) ‘begin’ C) integer D) var E) real F) end Câu 8: Hãy chọn đáp án tên chuẩn Pascal: A) real B) uses D) integer E) byte C) const F) sqr Câu 9: Trong dòng thơng tin thích chứa ký tự ngồi bảng chữ ngôn ngữ hay không sao? (Có thể, chương trình biên dịch khơng kiểm tra lỗi thích) Câu 10: Hãy nêu VD (6 tên) mà người dùng đặt sai ngôn ngữ lập trình Pascal lỗi, cách sửa tên cho Câu 11: Bổ sung tập 4, 5, SGK Tin học 11 (trang 13) Tiết 4_PPCT Ngày soạn: Ngày dạy: CHƯƠNG II: CHƯƠNG TRÌNH ĐƠN GIẢN BÀI 3: CẤU TRÚC CHƯƠNG TRÌNH A MỤC ĐÍCH VÀ U CẦU Mục đích: - Giúp học sinh nắm cấu trúc chung chương trình đơn giản - Nhận biết phần chương trình đơn giản Yêu cầu: - Học sinh ý học tập, tích cực xây dựng học - Học sinh nắm cấu trúc chương trình đơn giản - Biết cách đặt tên, khai báo biến chương trình B PHƯƠNG PHÁP GIẢNG DẠY - Lấy học sinh làm trung tâm, lấy VD cụ thể để học sinh nắm vững học C KIẾN THỨC TRỌNG TÂM Trong cần cung cấp cho học sinh kiến thức sau: - Cấu trúc chương trình - Khai báo tên, thư viện, biến chương trình D PHƯƠNG TIỆN DẠY HỌC - Bảng đen, phấn trắng E NỘI DUNG GIẢNG DẠY I ĐẶT VẤN ĐỀ CHO BÀI GIẢNG Các em tìm hiểu ngơn ngữ lập trình ngơn ngữ lập trình có cấu trúc người lập trình viết chương trình cho quy tắc Trong ngơn ngữ lập trình Pascal hay C+ + đưa cấu trúc riêng Ta tìm hiểu cấu trúc gì? II NỘI DUNG BÀI HỌC Thời gian 15 ph Nội dung ghi bảng Hoạt động GV BÀI 3: CẤU TRÚC CHƯƠNG TRÌNH - Ghi học lên bảng - Trên bảng cấu trúc chương trình viết ngơn ngữ lập trình Pascal Em cho thấy biết phần phần khai báo, phần phần thân chương trình? Cấu trúc chung *Ngơn ngữ lập trình có phần: - Phần khai báo - Phần thân - Trên bảng cấu trúc chung chương trình đơn giản bao gồm phần, phần khai báo Hoạt động HS Học sinh theo dỏi, ghi chép trả lời ... CẦU Mục đích: - Học sinh biết khái niệm: Phép toán, biểu thức số học, hàm số học chuẩn, biểu thức quan hệ Yêu cầu: - Học sinh hiểu lệnh gán - Viết lệnh gán - Viết biểu thức số học logic với phép... bản: Phép toán, biểu thức, gán giá trị - Đối với phép toán toán học phép toán Pascal, em xem bảng thấy có nhiều kí hiệu tương ứng khác VD phép chia dấu (/) Phép toán Chú ý: - Kết phép toán quan... toán số học - Em điền kết biểu thức TP biểu thức toán học tương ứng? - Các em ý mức ưu tiên phép tốn sau: (bảng hình bên) ph * Mức ưu tiên phép toán: Hoạt động HS Học sinh theo dỏi, ghi chép học