I. MỤC TIÊU:
Kiến thức:
- Biết ngôn ngữ lập trình có 3 thành phần cơ bản là: bảng chữ cái, cú pháp và ngữ nghĩa. Hiểu và phân biệt được 3 thành phần này.
- Biết một số khái niệm: tên, tên chuẩn, tên dành riêng, hằng và biến
- Yêu cầu học sinh ghi nhớ các qui định về tên, hằng và biến trong ngôn ngữ lập trình. Biết cách đặt tên đúng và nhận biết được tên sai quy định.
II. CHUẨN BỊ:
Giáo viên:
Chuẩn bị giáo án giảng dạy.
Tranh minh hoạ một đoạn chương trình Pascal đơn giản, Minh hoạ bảng chữ cái trong ngôn ngữ Pascal và trong ngôn ngữ tự nhiên.
Bài 2: các thành phần của ngôn ngữ lập trình (Tiết PPCT : 2) Ngày soạn: ................................................. Ngày đăng ký giáo án: ............................... Người duyệt giáo án (TTCM duyệt, BGH duyệt): ................................................................................................................................... ................................................................................................................................... I. Mục tiêu: Kiến thức: - Biết ngôn ngữ lập trình có 3 thành phần cơ bản là: bảng chữ cái, cú pháp và ngữ nghĩa. Hiểu và phân biệt được 3 thành phần này. - Biết một số khái niệm: tên, tên chuẩn, tên dành riêng, hằng và biến - Yêu cầu học sinh ghi nhớ các qui định về tên, hằng và biến trong ngôn ngữ lập trình. Biết cách đặt tên đúng và nhận biết được tên sai quy định. II. Chuẩn bị: Giáo viên: Chuẩn bị giáo án giảng dạy. Tranh minh hoạ một đoạn chương trình Pascal đơn giản, Minh hoạ bảng chữ cái trong ngôn ngữ Pascal và trong ngôn ngữ tự nhiên. III. Tổ chức dạy và học: 1. Hoạt động 1. Các thành phần cơ bản. a. Mục tiêu: - Biết ngôn ngữ lập trình có 3 thành phần cơ bản là: bảng chữ cái, cú pháp và ngữ nghĩa - Phân biệt được 3 thành phần này b. Nội dung: - Bảng chữ cái: Là tập hợp các ký tự dùng để viết chương trình. - Cú pháp: là bộ quy tắc để viết chương trình Cú pháp cho biết cách viết chương trình hợp lệ - 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 của nó Ngữ nghĩa xác định ý nghĩa của các tổ hợp ký tự trong chương trình - Lỗi cú pháp được chương trình dịch phát hiện và thông báo cho người lập trình. Chương trình không còn lỗi cú pháp thì mới có thể dịch sang ngôn ngữ máy. - Lỗi ngữ nghĩa được phát hiện khi chạy chương trình. c. Cách tiến hành: Hoạt động của giáo viên Hoạt động của học sinh GV: Trong ngôn ngữ tự nhiên để diễn đạt một vấn đề thì cần phải sử dụng bảng chữ cái và những quy tắc ngữ pháp để viết thành một câu văn hay một đoạn văn. Tương tự như thế trong các ngôn ngữ lập trình nói chung thường có chung một số thành phần như: dùng những ký hiệu nào để viết chương trình, viết theo quy tắc nào, viết như vậy có ý nghĩa gì? Mỗi ngôn ngữ lập trình có một quy định riêng về những thành phần này. H: Các thành phần của các NNLT nói chung bao gồm những đối tượng nào? Hoạt động 1.1: Tìm hiểu về bảng chữ cái H: Em hiểu về bảng chữ cái như thế nào? GV: Yêu cầu học sinh tìm hiểu bảng chữ cái của NNLT Pascal? Cụ thể: Chia lớp thành 3 nhóm, giao nhiệm vụ: Nhóm 1: Nêu các chữ cái trong bảng chữ cái tiếng Anh Nhóm 2: Nêu các số có trong hệ đếm thập phân Nhóm 3: Nêu các kí tự đặc biệt khác GV: Gọi bất kì một học sinh thuộc các nhóm để trả lời. - Cho các nhóm khác bổ sung GV: Treo tranh đã chuẩn bị để tiểu kết cho vấn đề GV: Bảng chữ cái của các ngôn ngữ lập trình khác nhau có sự khác nhau: VD: NNLT Pascal không sử dụng dấu !, dấu “, dấu \ nhưng trong ngôn ngữ C++ lại sử dụng các ký tự này. Hoạt động 1.2: Tìm hiểu về cú pháp H: Em hiểu cú pháp trong NNLT là gì? GV: Cú pháp các ngôn ngữ lập trình khác nhau cũng khác nhau VD: NNLT Pascal dùng cặp từ Begin – End để gộp nhiều lệnh thành một lệnh còn trong NNLT C++ lại dùng cặp ký hiệu {} H: Cú pháp có ý nghĩa gì trong quá trình viết chương trình? Hoạt động 1.3: Tìm hiểu về ngữ nghĩa H: Ngữ nghĩa là gì? Nó có tác dụng như thế nào trong khi lập trình? VD: Xét 2 biểu thức: A + B (1) ; A, B là 2 số thực I + J (2) I, J là 2 số nguyên Khi đó dấu + trong (1) sẽ là cộng 2 số thực, trong (2) là cộng 2 số nguyên - Mỗi ngôn ngữ khác nhau cũng có cách xác định ngữ nghĩa khác nhau. GV: Nêu một số chú ý cho học sinh - Lỗi cú pháp được chương trình dịch phát hiện và thông báo cho người lập trình. Chương trình không còn lỗi cú pháp thì mới có thể dịch sang ngôn ngữ máy. - Lỗi ngữ nghĩa được phát hiện khi chạy chương trình. Nghe giảng, ghi bài Mỗi ngôn ngữ lập trình thường có 3 thành phần cơ bản là: bảng chữ cái, cú pháp và ngữ nghĩa Bảng chữ cái: Là tập hợp các ký tự dùng để viết chương trình. Nghiên cứu SGK, thảo luận để trả lời câu hỏi Trong ngôn ngữ Pascal bảng chữ cái gồm: + Các chữ cái (cả chữ cái thường và chữ cái in hoa) trong bảng chữ cái tiếng Anh, + Các chữ số từ 0 -> 9 + Một số ký tự đặc biệt khác Nghiên cứu SGK trả lời câu hỏi Cú pháp: là bộ quy tắc để viết chương trình - Cú pháp cho biết cách viết chương trình hợp lệ 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 của nó Ngữ nghĩa xác định ý nghĩa của các tổ hợp ký tự trong chương trình. Hoạt động 2: Tìm hiểu khái niệm tên trong các thành phần của NNLT a. Mục tiêu: - Biết một số khái niệm: tên, tên chuẩn, tên dành riêng. - Biết cách đặt tên đúng và nhận biết được tên sai quy định. b. Nội dung: - Mọi đối tượng trong chương trình đều phải được đặt tên. Mỗi ngôn ngữ lập trình có một quy tắc đặt tên riêng - Ngôn ngữ lập trình thường có 3 loại tên cơ bản: tên dành riêng, tên chuẩn và tên do người lập trình tự đặt. + Tên dành riêng: Là những tên được ngôn ngữ lập trình với ý nghĩa xác định mà người lập trình không thể dùng với ý nghĩa khác. Tên dành riêng còn được gọi là từ khoá. + Tên chuẩn: Là những tên được ngôn ngữ lập trình dùng với ý nghĩa nào đó trong các thư viện của ngôn ngữ lập trình, tuy nhiên người lập trình có thể sử dụng với ý nghĩa khác + Tên do người lập trình tự đặt: Được xác địh bằng cách khai báo trước khi sử dụng và không được trùng với tên dành riêng. Các tên trong chương trình không được trùng nhau. c. Cách tiến hành: Hoạt động của giáo viên Hoạt động của học sinh Hoạt động 2.1: Tìm hiểu khái niệm tên GV: Trong các ngôn ngữ lập trình nói chung, các đối tượng sử dụng trong chương trình đều phải đặt tên để tiện cho việc sử dụng. Việc đặt tên trong các ngôn ngữ khác nhau là khác nhau, có ngôn ngữ phân biệt chữ hoa, chữ thường, có ngôn ngữ lại không phân biệt chữ hoa, chữ thường. GV: Y/c HS nghiên cứu SGK để nêu cách đặt tên trong ngôn ngữ Pascal GV: Từ quy tắc đặt tên của Pascal em lấy 1 số ví dụ về tên đúng và tên sai GV: Ngôn ngữ lập trình Pascal không phân biệt chữ hoa, chữ thường nhưng trong một số ngôn ngữ khác lại phân biệt chữ hoa và chữ thường. Hoạt động 2.2: Phân loại tên H: Trong các NNLT nói chung tên được phân loại như thế nào? GV: Chia lớp thành 3 nhóm và yêu cầu mỗi nhóm trình bày hiểu biết về từng loại tên? * Treo tranh minh hoạ để y/c HS phân biệt một số tên trong Pascal: Program, Integer, Byte, Type, x, y, Abs, Delta - GV chỉ cho HS một số tên chuẩn trong ngôn ngữ Pascal. Nghe giảng, ghi bài - Tên trong ngôn ngữ Turbo Pascal là : + Một dãy liên tiếp không quá 127 ký tự + Bao gồm: các chữ cái, chữ số và dấu gạch dưới + Nhưng phải bắt đầu bằng chữ cái hoặc dấu gạch dưới. - HS lấy VD: Tên đúng: a, b, x1, _ten, ... Tên sai: a bc, 2a, a&b, ... Trả lời Ngôn ngữ lập trình thường có 3 loại tên cơ bản: tên dành riêng, tên chuẩn và tên do người lập trình tự đặt. Các nhóm thảo luận và cử đại diện trả lời câu hỏi + Tên dành riêng: Là những tên được ngôn ngữ lập trình với ý nghĩa xác định mà người lập trình không thể dùng với ý nghĩa khác. Tên dành riêng còn được gọi là từ khoá. VD: Một số từ khoá: Trong Pascal: Program, Var, Begin, ... Trong C++: main, include, void, ... + Tên chuẩn: Là những tên được ngôn ngữ lập trình dùng với ý nghĩa nào đó trong các thư viện của ngôn ngữ lập trình, tuy nhiên người lập trình có thể sử dụng với ý nghĩa khác VD: Một số từ khoá: Trong Pascal: Real, Integer, Sin, Cos, ... Trong C++: cin, cout, getchar, ... + Tên do người lập trình tự đặt: - Được xác địh bằng cách khai báo trước khi sử dụng và không được trùng với tên dành riêng. - Các tên trong chương trình không được trùng nhau. Quan sát tranh và trả lời câu hỏi Tên dành riêng: Program, Byte Tên chuẩn: Byte, Abs, Integer Tên do người lập trình đặt: x, y, Delta Hoạt động 3: Tìm hiểu khái niệm hằng, biến, chú thích trong NNLT a. Mục tiêu: - Học sinh ghi nhớ các qui định về hằng và biến trong ngôn ngữ lập trình. Biết nhận biết được các loại hằng và các chú thích trong chương trình. b. Nội dung: - Hằng: Là các đại lượng có giá trị không đổi trong quá trình thực hiện chương trình - Các ngôn ngữ lập trình thường có: + Hằng số học: số nguyên hoặc số thực + Hằng xâu: là chuỗi ký tự đặt trong dấu ‘’ hoặc dấu “” + Hằng logic: là các giá trị đúng hoặc sai. - Biến: là đại lượng được đặt tên, dùng để lưu trữ giá trị và giá trị có thể thay đổi được trong quá trình thực hiện chương trình. - Các ngôn ngữ lập trình có nhiều loại biến khác nhau - Biến phải khai báo trước khi sử dụng. - Chú thích: trong khi viết chương trình có thể viết các chú thích cho chương trình. Chú thích không làm ảnh hưởng đến chương trình c. Cách tiến hành: Hoạt động của giáo viên Hoạt động của học sinh Hoạt động 3.1: Tìm hiểu khái niệm hằng H: Em cho biết khái niệm hằng trong các NNLT nói chung? GV: Hằng thường có 2 loại: hằng được đặt tên và hằng không được đặt tên. Hằng không được đặt tên là những giá trị viết trực tiếp khi viết chương trình. Mỗi ngôn ngữ có một quy định riêng khi viết hằng. Hằng được đặt tên cũng có cách đặt tên cho hằng khác nhau. H: Có những loại hằng nào? Hoạt động 3.2: Tìm hiểu khái niệm biến H: Em cho biết khái niệm biến? GV: Biến là đối tượng được sử dụng nhiều nhất trong khi viết chương trình. Biến là đại lượng có thể thay đổi được nên thường được dùng để lưu trữ kết quả, làm trung gian cho các tính toán, ... Mỗi loại ngôn ngữ có những loại biến khác nhau và cách khai báo cũng khác nhau. Hoạt động 3.3: Tìm hiểu khái niệm chú thích Khi viết chương trình, người lập trình thường có nhu cầu giải thích những câu lệnh mình viết, để khi đọc lại được thuận tiện hoặc người khác đọc được có thể hiểu được chương trình mình viết, do vậy các ngôn ngữ lập trình thường cung cấp cho ta cách để đưa các chú thích vào trong chương trình - Các ngôn ngữ khác nhau thì cách viết các chú thích cũng khác nhau. Nghiên cứu, trả lời * Hằng: Là các đại lượng có giá trị không đổi trong quá trình thực hiện chương trình. Nghiên cứu, trả lời - Các ngôn ngữ lập trình thường có: + Hằng số học: số nguyên hoặc số thực + Hằng xâu: là chuỗi ký tự đặt trong dấu ‘’ hoặc dấu “” + Hằng logic: là các giá trị đúng hoặc sai. Nghiên cứu, trả lời * Biến: - Là đại lượng được đặt tên, giá trị có thể thay đổi được trong chương trình. - Các ngôn ngữ lập trình có nhiều loại biến khác nhau - Biến phải khai báo trước khi sử dụng. Chú thích: - Trong khi viết chương trình có thể viết các chú thích cho chương trình. Chú thích không làm ảnh hưởng đến chương trình Trong Pascal chú thích được đặt trong dấu {và} hoặc trong dấu (*và *) Trong C++ chú thích được đặt trong /*và*/ IV. Củng cố. - Nhắc lại một các khái niệm mới - Ra bài tập về nhà.
Tài liệu đính kèm: