Tải bản đầy đủ (.docx) (15 trang)

Giáo án tin học 11 theo định hướng phát triển năng lực Chương 1 3 cột 5 bước

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (147.86 KB, 15 trang )

Chương 1. 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 VỀ LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH
Số tiết: 1
Ngày soạn: 05/08/2018
Tiết theo phân phối chương trình: 1
Tuần dạy: 1
I. Mục tiêu:
1. Kiến thức:


Biết khái niệm lập trình;



Hiểu 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;



Hiểu ý nghĩa và nhiệm vụ của chương trình dịch.

2. Kĩ năng:


Phân biệt được biên dịch và thông dịch.

3. Thái độ:


Học sinh hiểu bài và hứng thú với bài học và yêu thích môn học h ơn

4. Định hướng năng lực hình thành:







Phát triển năng lực sử dụng ngôn ngữ
Phát triển năng lực giao tiếp và năng lực hợp tác
Phát triển năng lực giải quyết vấn đề.
Phát triển năng lực năng lực tự học.

II. Chuẩn bị của giáo viên và học sinh
1. Chuẩn bị của giáo viên: Giáo án, SGK.
2. Chuẩn bị của học sinh: Xem trước SGK ở nhà.
III. Tổ chức các hoạt động học tập
1. Ổn định lớp: Kiểm tra sĩ số
2. Kiểm tra bài cũ: Không
3. Thiết kế tiến trình dạy học
3.1. Hoạt động khởi động
- Mục tiêu: Tạo động lực để tìm hiểu về “lập trình và ngôn ngữ lập trình”.
- Phương thức: Vấn đáp, diễn giảng
Chúng ta đã được làm quen một số khái niệm về lập trình và ngôn ngữ l ập trình
trong chương trình Tin học trung học cơ sở. Với chương trình Tin học 11 năm nay
chúng ta sẽ có cơ hội tìm hiểu sâu hơn về ngôn ngữ l ập trình. Và bài đ ầu tiên c ủa
chương 1 là một số khái niệm về lập trình và ngôn ngữ lập trình.
3.2. Hoạt động hình thành kiến thức
Hoạt động 1: Tìm hiểu khái niệm về lập trình và ngôn ngữ lập trình

1



- Mục tiêu:
+ Biết được khái niệm lập trình;
+ Biết được những ưu điểm của ngôn ngữ lập trình bậc cao;
+ Hình thành năng lực phát hiện vấn đề và giải quyết vấn đề, năng lực sử dụng
ngôn ngữ, năng lực hợp tác, năng lực tự học
- Phương thức:
 Hoạt động nhóm
- Các bước của hoạt động:
Hoạt động của giáo viên
Bước 1: Tổ chức hoạt động và giao
nhiệm vụ cho học sinh
* Hoạt động nhóm: Chia lớp làm 4
nhóm
* Nhiệm vụ:
 Lập trình là gì?
 Ngôn ngữ lập trình là gì?
 Có những loại ngôn ngữ lập trình
nào?
 Ưu điểm của ngôn ngữ lập trình bậc
cao?

Hoạt động
của HS
Bước 2: Tiếp
nhận và thực
hiện nhiệm vụ
được giao
Bước 4:
Nghiên cứu,
tìm hiểu tài

liệu, trao đổi,
thảo luận,
trình bày, báo
cáo sản phẩm

Bước 3: Dự kiến sản phẩm

a. Khái niệm lập trình:
Lập trình là sử dụng cấu
trúc dữ liệu và các câu
lệnh của một ngôn ngữ
lập trình cụ thể để mô
phỏng dữ liệu và diễn đạt
các thao tác của thuật toán
b. Ngôn ngữ lập trình:
Ngôn ngữ lập trình là ngôn
ngữ dùng để viết chương
trình.





 Ngôn ngữ lập trình là ngôn ngữ dùng
để viết chương trình
 Những loại ngôn ngữ lập trình:
Ngôn ngữ máy
Hợp ngữ
Ngôn ngữ bậc cao


 Ưu điểm của ngôn ngữ lập trình bậc
cao: Gần với ngôn ngữ tự nhiên, có
tính độc lập cao, ít phụ thuộc vào loại
máy. Thuận tiện cho người lập trình.
Bước 5. Nhận xét, đánh giá hoạt động,
sản phẩm của HS
Hoạt động 2: Tìm hiểu về chương trình dịch


1. Khái niệm lập trình,
ngôn ngữ lập trình:

Một số loại ngôn ngữ lập
trình:

 Lập trình là sử dụng cấu trúc dữ
liệu và các câu lệnh của một ngôn ngữ
lập trình cụ thể để mô phỏng dữ liệu
và diễn đạt các thao tác của thuật toán





Nội dung chính

Mục tiêu:

2


Ngôn ngữ máy
Hợp ngữ
Ngôn ngữ lập trình bậc
cao


 Biết chức năng và sự cần thiết của chương trình dịch;
 Biết có hai loại chương trình dịch là thông dịch và biên dịch;


Phương thức: Phân công nhiệm vụ, thảo luận nhóm, diễn giảng, vấn đáp.



Các bước của hoạt động:
Hoạt động của giáo viên

Hoạt động
của HS

Bước 1: Tổ chức hoạt động và giao
nhiệm vụ cho học sinh

Bước 2: Tiếp
nhận và thực
* Hoạt động nhóm: Chia lớp làm 4 nhóm hiện nhiệm
vụ được giao
* Nhiệm vụ:
 Chương trình dịch là gì?
 Chương trình dịch được phân loại

như thế nào?
 Phân biệt biên dịch với thông dịch?
Bước 3: Dự kiến sản phẩm
 Chương trình dịch là chương trình có
chức năng chuyển đổi chương trình
viết trên ngôn ngữ lập trình bậc cao
thành chương trình thực hiện được
trên máy tính.

Bước 4:
Nghiên cứu,
tìm hiểu tài
liệu, trao đổi,
thảo luận,
trình bày, báo
cáo sản phẩm

 Chương trình dịch được phân thành
hai loại, thông dịch và biên dịch.

2. Chương trình dịch:
* Khái niệm chương
trình dịch:
Chương trình dịch là
chương trình có chức năng
chuyển đổi chương trình
viết trên ngôn ngữ lập
trình bậc cao thành
chương trình thực hiện
được trên máy tính.

Chương
trình
nguồn

Chương
trình
dịch

Chương
trình
đích

* Phân loại chương trình
dịch: gồm 2 loại, thông
dịch và biên dịch


 Phân biệt biên dịch với thông dịch:
Thông dịch
- Dịch lần lượt
từng câu lệnh;
- Không có
chương trình
đích để lưu trữ.

Nội dung chính

Thông dịch:

+ Kiểm tra tính đúng đắn

của câu lệnh tiếp theo
trong chương trình nguồn

Biên dịch
- Dịch toàn bộ
chương trình
nguồn;
- Có chương trình
đích để lưu trữ
và sử dụng lại.

+ Chuyển đổi câu lệnh đó
thành các câu lệnh tương
ứng trong ngôn ngữ máy
+ Thực hiện các câu lệnh
vừa chuyển đổi


Bước 5. Nhận xét, đánh giá hoạt động,
sản phẩm của HS:

Biên dịch:

+ Thực hiện qua hai bước
sau:

Nhấn mạnh thêm một số lưu ý:

+ Duyệt, kiểm tra, phát
hiện lỗi, xác định chương

trình nguồn có dịch được
không

Đối với thông dịch, loại chương trình
dịch này đặc biệt thích hợp cho môi
trường đối thoại giữa người dùng và
hệ thống, như các ngôn ngữ khai thác
hệ quản trị cơ sở dữ liệu, đối thoại với
hệ điều hành…

+ Dịch chương trình nguồn
thành một chương trình
đích có thể thực hiện trên
máy và lưu trữ lại để sử

Đối với biên dịch, loại chương trình

3


dịch này thuận tiện cho các chương
trình ổn định và cần thực hiện nhiều
lần.

dụng về sau

3.3. Hoạt động luyện tập


Mục tiêu:

 Biết khái niệm về lập trình;
 Hiểu khái niệm và hoạt động của chương trình dịch.



Phương thức:
 Phát vấn, câu hỏi, bài tập: Giáo viên trình chiếu các slide câu hỏi trắc nghi ệm
và yêu cầu học sinh đưa ra đáp án.

+ Hoạt động cá nhân: Học sinh tiếp nhận yêu cầu, suy nghĩ và trả lời các câu hỏi
trắc nghiệm.
Câu 1: Hãy chọn phương án ghép phù hợp nhất. Ngôn ngữ lập trình là gì:
A. Phương tiện để soạn thảo văn bản trong đó có chương trình
B. Ngôn ngữ Pascal hoặc C
C. Phương tiện diễn đạt thuật toán để máy tính thực hiện công việc
D. Phương tiện diễn đạt thuật toán
Câu 2: Hãy chọn phương án ghép sai. Ngôn ngữ lập trình bậc cao là ngôn ngữ
A. Thể hiện thuật toán theo những quy ước nào đó không phụ thuộc vào các máy
tính cụ thể
B. Mà máy tính không hiểu trực tiếp được, chương trình vi ết trên ngôn ngữ b ậc
cao trước khi chạy phải dịch sang ngôn ngữ máy
C. Có thể diễn đạt được mọi thuật toán
D. Sử dụng từ vựng và cú pháp của ngôn ngữ tự nhiên (tiếng Anh)
Câu 3: Phát biểu nào không đúng trong các phát biểu dưới đây?
A. Chương trình dịch cho phép chuyển chương trình viết bằng m ột ngôn ng ữ l ập
trình nào đó sang chương trình trên ngôn ngữ máy để máy có th ể th ực hi ện
được mà vẫn bảo toàn được ngữ nghĩa của chương trình nguồn;
B. Chương trình dịch giúp người lập trình có thể lập trình trên m ột ngôn ng ữ l ập
trình gần với ngôn ngữ tự nhiên hơn, do đó gi ảm nhẹ được n ỗ l ực lập trình, tăng
cường hiệu suất lập trình

C. Chương trình dịch giúp tìm ra tất cả các lỗi của chương trình
D. Một ngôn ngữ lập trình có thể có cả chương trình thông d ịch và ch ương trình
biên dịch
Câu 4: Phát biểu nào dưới đây là sai khi nói về biên dịch và thông dịch?
A. Chương trình dịch của ngôn ngữ lập trình bậc cao gọi là biên d ịch còn thông
dịch là chương trình dịch dùng với hợp ngữ
B. Một ngôn ngữ lập trình có thể có cả chương trình thông dịch và ch ương trình
biên dịch

4


C. Thông dịch lần lượt dịch và thực hiện từng câu lệnh còn biên d ịch ph ải d ịch
trước toàn bộ chương trình sang mã nhị phân thì mới có thể thực hiện được
D. Biên dịch và thông dịch đều kiểm tra tính đúng đắn của câu lệnh
Câu 5: Phát biểu nào dưới đây là đúng trong các phát biểu dưới đây?
A. Mỗi ngôn ngữ lập trình bậc cao đều có đúng một chương trình dịch;
B. Chương trình dịch gồm hợp dịch, thông dịch, biên dịch
C. Máy tính chỉ nhận biết được kí tự 0 và kí tự 1 nên chương trình bằng ngôn ngữ
máy cũng phải được dịch sang mã nhị phân
D. Một ngôn ngữ lập trình bậc cao có thể có nhiều chương trình dịch khác nhau



Dự kiến sản phẩm: Câu 1 – C, Câu 2 – C, Câu 3 – C, Câu 4 – A, Câu 5 – D
Nhận xét, đánh giá sản phẩm, hoạt động: Giáo viên nhận xét và củng cố đáp
án cho từng câu hỏi.

3.4. Hoạt động vận dụng



Mục tiêu: Vận dụng kiến thức vừa học để trả lời các câu hỏi liên quan về lập
trình và ngôn ngữ lập trình.



Phương thức:
 Bài tập, câu hỏi: Giáo viên yêu cầu học sinh trả các câu hỏi và bài tập
 Hoạt động cá nhân: Học sinh tiếp nhận yêu cầu và trả lời câu hỏi



Dự kiến sản phẩm:

Câu 1. Hãy nêu sự khác biệt giữa 2 loại của chương trình dịch là biên dịch và thông
dịch?
Gợi ý trả lời:
Biên dịch

Thông dịch

Đọc và dịch toàn bộ mã nguồn trong
một lần

Đọc và dịch từng câu lệnh trong mã
nguồn

Thực thi chương trình vừa biên dịch
được


Thực thi từng câu lệnh sau khi câu
lệnh đó được dịch xong

Chương trình có thể được lưu trữ để
dùng về sau

Không được lưu trữ để dùng về sau

Câu 2. Trong chế độ biên dịch, một chương trình đã được dịch thông suốt, h ệ th ống
không báo lỗi. Có thể khẳng định rằng ta đã có một chương trình đúng hay ch ưa? T ại
sao?
Gợi ý trả lời:
Không thể khẳng định chương trình đúng vì chương trình có th ể v ẫn còn ch ứa l ỗi
ngữ nghĩa.
Câu 3. Trong chế độ thông dịch, giả sử hai phần ba số câu lệnh trong chương trình
đã được thự hiện. Có thể khẳng định rằng chương trình không còn ch ứa l ỗi cú pháp
nữa hay không? Tại sao?

5


Gợi ý trả lời:
tra.

Không thể khẳng định. Cú pháp của các câu lệnh chưa thực hi ện ch ưa đ ược ki ểm

Câu 4. Sau khi chương trình đã được 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 là tìm và sửa lỗi trong chương trình nguồn nữa hay không?
Gợi ý trả lời:
Có. Cần kiểm tra ngữ nghĩa.



Nhận xét, đánh giá sản phẩm, hoạt động: Giáo viên nhận xét và củng cố đáp
án cho từng câu hỏi và nhận xét chung hoạt động của lớp.

3.5. Hoạt động Tìm tòi mở rộng
- Mục tiêu:
- Phương thức:
- Dự kiến sản phẩm:
- Nhận xét, đánh giá sản phẩm, hoạt động:
Tập Sơn, ngày ….. tháng …. năm 20…
DUYỆT CỦA TỔ CHUYÊN MÔN

6


Bài 2. CÁC THÀNH PHẦN CỦA NGÔN NGỮ LẬP TRÌNH
Số tiết: 3 (2 lý thuyết + 1 bài tập)
Ngày soạn: 05/08/2018
Tiết theo phân phối chương trình: 2, 3
Tuần dạy: 1, 2
I. Mục tiêu:
1. Kiến thức:


Biết 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;




Biết các khái niệm tên, tên chuẩn, tên dành riêng (từ khóa), hằng và biến;



Biết các quy định về tên, hằng và biến trong một ngôn ngữ lập trình cụ thể;

2. Kĩ năng:


Thực hiện được việc đặt tên đúng và nhận biết được tên sai quy định.

3. Thái độ:





Nhận biết được quá trình phát triển của ngôn ngữ l ập trình g ắn li ền v ới quá
trình phát triển của tin học nhằm giải quyết các bài toán th ực ti ễn ngày càng
phức tạp.
Ham muốn học một ngôn ngữ lập trình cụ thể để có khả năng gi ải quy ết các bài
toán trên máy tính điện tử.
Có tính kỉ luật cao và tinh thần làm việc theo nhóm.

4. Định hướng năng lực hình thành:







Phát triển năng lực sử dụng ngôn ngữ (bằng cách thông qua hoạt động phát biểu
định nghĩa, định lí, phương pháp, quy tắc,... đã học).
Phát triển năng lực giao tiếp và năng lực hợp tác (thông qua hoạt động theo nhóm).
Phát triển năng lực giải quyết vấn đề.
Phát triển năng lực tự quản lý và năng lực tự học.

II. Chuẩn bị của giáo viên và học sinh
3. Chuẩn bị của giáo viên: Giáo án, SGK.
4. Chuẩn bị của học sinh: Xem trước SGK ở nhà.
III. Tổ chức các hoạt động học tập
1. Ổn định lớp: Kiểm tra sĩ số
2. Kiểm tra bài cũ:
sao?

Câu 1. Lập trình là gì? Khi lập trình, người ta thường dùng loại NNLT nào? Vì
Câu 2. Chương trình dịch là gì? Phân biệt thông dịch và biên dịch?

3. Thiết kế tiến trình dạy học
3.1. Hoạt động khởi động
- Mục tiêu: Tạo sự tò mò về ngôn ngữ lập trình “gồm những thành phần nào?”.
- Phương thức: Vấn đáp, diễn giảng

7


Ở tiết trước, chúng ta đã biết một số khái niệm về lập trình và ngôn ngữ lập
trình. Vậy, ngôn ngữ lập trình gồm các thành phần nào? Chúng ta sẽ tìm hi ểu tiếp bài 2:
Các thành phần của ngôn ngữ lập trình.
3.2. Hoạt động hình thành kiến thức

Hoạt động 1: Tìm hiểu về các thành phần của ngôn ngữ lập trình.
- Mục tiêu:
+ Biết bất kì một ngôn ngữ lập trình nào đều có có ba thành phần: bảng chữ cái, cú
pháp và ngữ nghĩa;
+ Biết chương trình dịch chỉ chỉ phát hiện lỗi về mặt cú pháp, không phát hiện lỗi
ngữ nghĩa.
- Phương thức:
 Hoạt động nhóm
- Định hướng năng lực hình thành: năng lực phát hiện vấn đề và giải quyết vấn đề,
năng lực sử dụng ngôn ngữ, năng lực hợp tác, năng lực tự học.
- Các bước của hoạt động:
Hoạt động của giáo viên
Bước 1: Tổ chức hoạt động và giao
nhiệm vụ cho học sinh
* Hoạt động nhóm: Chia lớp làm 4
nhóm
* Nhiệm vụ:
 Một ngôn ngữ lập trình thường có
những thành phần nào?
 Bảng chữ cái, cú pháp và ngữ nghĩa
là gì?
 Chương trình dịch có phát hiện được
lỗi về mặt ngữ nghĩa hay không?

Hoạt động
của HS
Bước 2: Tiếp
nhận và thực
hiện nhiệm vụ
được giao

Bước 4:
Nghiên cứu,
tìm hiểu tài
liệu, trao đổi,
thảo luận,
trình bày, báo
cáo sản phẩm

Bước 3: Dự kiến sản phẩm

Nội dung chính
1. Các thành phần cơ
bản
Mỗi 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.
a. Bảng chữ cái
Tập hợp kí tự được dùng
để viết chương trình.
Ví dụ:
Trong Pascal bảng chữ cái
bao gồm:
Chữ cái thường và chữ cái
in hoa tiếng Anh: a...z ; A..Z

 Một 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.

10 chữ thập phân: 0..9
Các kí tự đặc biệt: (Xem
SGK)

 Bảng chữ cái, cú pháp và ngữ nghĩa:
- Bảng chữ cái là tập hợp kí tự được
dùng để viết chương trình.

Lưu ý: Không dùng bất kì
kí tự nào ngoài bảng chữ
cái của NNLT cụ thể khi
viết chương trình.

- Cú pháp là bộ quy tắc để viết
chương trình, gồm những quy định
viết từ và tổ hợp từ của mỗi ngôn ngữ.

b. Cú pháp

- 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ó.

Là bộ quy tắc để viết
chương trình, gồm những

8



 Chương trình dịch có không phát
hiện được lỗi về mặt ngữ nghĩa, chỉ
phát hiện lỗi về cú pháp khi dịch
chương trình.

quy định viết từ và tổ hợp
từ của mỗi ngôn ngữ.
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 của nó.

Bước 5. Nhận xét, đánh giá hoạt động,
sản phẩm của HS
Lưu ý:
- Không được phép dùng bất kì kí tự
nào ngoài các kí tự quy định trong
bảng chữ cái khi viết chương trình.

Hoạt động 2: Tìm hiểu các khái niệm về tên, tên dành riêng, tên chuẩn và tên do
người lập trình đặt.


Mục tiêu:
 Biết mọi đối tượng trong chương trình đều phải được đặt tên;
 Biết nhiều NNLT phân biệt ba loại tên: tên dành riêng, tên chu ẩn và tên do ng ười
lập trình đặt;
 Thực hiện được đặt tên đúng quy định và nhận biết được tên sai qui định.




Phương thức: Phân công nhiệm vụ, thảo luận nhóm, diễn giảng, vấn đáp.



Các bước của hoạt động:
Hoạt động của giáo viên
Bước 1: Tổ chức hoạt động và giao
nhiệm vụ cho học sinh
* Hoạt động nhóm: Chia lớp làm 4
nhóm
* Nhiệm vụ:

Hoạt động
của HS
Bước 2:
Tiếp nhận và
thực hiện
nhiệm vụ
được giao

2- Chieu dai 3- chieu@rong 4- 2x 5Delta?
 Thế nào là tên dành riêng, tên
chuẩn và tên do người lập trình
đặt?
Bước 3: Dự kiến sản phẩm

2. Một số khái niệm

a. Tên
Dùng để xác định các đối tượng
trong chương trình.
Tên đặt theo quy tắc của ngôn
ngữ lập trình và từng chương
trình dịch cụ thể.

 Mọi đối tượng trong chương trình
đều phải được đặt tên. Em hãy cho
biết quy tắc đặt tên trong ngôn ngữ
lập trình Pascal?
 Cho các ví dụ sau, hãy cho biết tên
nào đúng quy tắc: 1- Giai_PTB2

Nội dung chính

Qui tắc đặt tên trong Turbo
Pascal:
Bước 4:
Nghiên cứu,
tìm hiểu tài
liệu, trao đổi,
thảo luận,
trình bày, báo
cáo sản
phẩm

 Tên là một dãy liên tiếp các
kí tự gồm: chữ cái, chữ số,
dấu gạch dưới.

 Độ dài tên ≤ 127 kí tự.
 Bắt đầu tên bằng chữ cái
hoặc dấu gạch dưới.
 Không phân biệt chữ hoa và
thường.
Nhiều ngôn ngữ lập trình
phân biệt ba loại tên:

 Quy tắc đặt tên trong ngôn ngữ
lập trình Pascal

9


 Tên là một dãy liên tiếp các kí tự
gồm: chữ cái, chữ số, dấu gạch
dưới.
 Độ dài tên ≤ 127 kí tự.
 Bắt đầu tên bằng chữ cái hoặc
dấu gạch dưới.
 Không phân biệt chữ hoa và
thường.

- Tên dành riêng (Từ khoá): là
những tên được ngôn ngữ lập
trình dùng với ý nghĩa xác định
mà không được dùng với ý
nghĩa khác
- Tên chuẩn: dùng với ý nghĩa
nhất định nào đó được quy

địnhtrong các thư viện của
ngôn ngữ lập trình, nhưng
người lập trình có thể khai báo
và dùng với ý nghĩa khác

 Các tên đúng quy tắc: 1Giai_PTB2 5- Delta
 Tên dành riêng, tên chuẩn và tên
do người lập trình đặt:

- Tên do người lập trình đặt:
sử dụng theo ý nghĩa riêng, xác
định bằng cách khai báo trước
khi sử dụng.

- Tên dành riêng (Từ khoá): là
những tên được ngôn ngữ lập trình
dùng với ý nghĩa xác định mà không
được dùng với ý nghĩa khác

VÍ DỤ:

- Tên chuẩn: dùng với ý nghĩa nhất
định nào đó được quy địnhtrong các
thư viện của ngôn ngữ lập trình,
nhưng người lập trình có thể khai
báo và dùng với ý nghĩa khác
- Tên do người lập trình đặt: sử
dụng theo ý nghĩa riêng, xác định
bằng cách khai báo trước khi sử
dụng.

Bước 5. Nhận xét, đánh giá hoạt
động, sản phẩm của HS

LOẠI TÊN

PASCAL

C/ C++

Tên dành
riêng

PROGRAM, USE,
VAR, BEGIN,
END,…

MAIN,
INCLUDE,
VOID,
WHILE,
IF…

Tên chuẩn

BYTE, REAL,
ABS...

COUT,
CLRSCR,
CIN…


Tên do
người lập
trình đặt

BAITAP, A, X1, CHUVI,
SO_LUONG, …

Hoạt động 3: Tìm hiểu các khái niệm về hằng, biến và chú thích.


Mục tiêu:
 Biết mọi đối tượng trong chương trình đều phải được đặt tên;
 Biết nhiều NNLT phân biệt ba loại tên: tên dành riêng, tên chu ẩn và tên do ng ười
lập trình đặt;
 Thực hiện được đặt tên đúng quy định và nhận biết được tên sai qui định.



Phương thức: Phân công nhiệm vụ, thảo luận nhóm, diễn giảng, vấn đáp.



Các bước của hoạt động:
Hoạt động của giáo viên

Hoạt động
của HS

Bước 1: Tổ chức hoạt động và giao

nhiệm vụ cho học sinh

Bước 2: Tiếp
nhận và thực
* Hoạt động nhóm: Chia lớp làm 4 nhóm hiện nhiệm

10

Nội dung chính
2. Một số khái niệm
b. Hằng và biến


* Nhiệm vụ:

vụ được giao

 Hằng là gì? Trong NNLT có những loại
hằng nào?

Hằng là đại lượng có giá
trị không thay đổi trong
quá trình thực hiện
chương trình.

 Biến là gì? Biến khác hằng ở điểm
nào?
 Chú thích là gì? Chú thích có được
dịch ra ngôn ngữ máy không? Trong
Pascal phần chú thích được nhận biết

thông qua kí hiệu nào?
Bước 3: Dự kiến sản phẩm
 Hằng là đại lượng có giá trị không
thay đổi trong quá trình thực hiện
chương trình. Trong NNLT có một số
loại hằng sau: Hằng số học, hằng lôgic
và hằng xâu.

* Hằng

Bước 4:
Nghiên cứu,
tìm hiểu tài
liệu, trao đổi,
thảo luận,
trình bày, báo
cáo sản phẩm

- Hằng số học là các số
nguyên và số thực (dấu
phẩy tĩnh hay dấu phẩy
động).
- Hằng lôgic là các giá trị
TRUE hoặc FALSE
- Hằng xâu là chuỗi kí tự
bất kì, khi viết đặt trong
cặp dấu nháy.
* Biến

 Biến là đại lượng được đặt tên, dùng

để lưu trữ giá trị và giá trị có thể được
thay đổi trong quá trình thực hiện
chương trình. Biến khác hằng ở điểm
là giá trị của biến có thể thay đổi còn
hằng thì không.

Là những đại lượng được
đặt tên, dùng để lưu trữ
giá trị và giá trị có thể
được thay đổi trong quá
trình thực hiện chương
trình.



Tên biến mang giá trị của
biến tại từng thời điểm
thực hiện chương trình.

- Các đoạn chú thích đặt trong chương
trình nguồn giúp người đọc dễ dàng
nhận biết ý nghĩa của chương trình đó.

c. Chú thích
Các đoạn chú thích đặt
trong chương trình nguồn
giúp người đọc dễ dàng
nhận biết ý nghĩa của
chương trình đó.


- Chú thích được chương trình dịch bỏ
qua khi dịch chương trình.
- Trong Pascal, chú thích được đặt giữa
cặp dấu { } hoặc (* *)

Chú thích không làm ảnh
hưởng đến nội dung
chương trình nguồn và
được chương trình dịch bỏ
qua.

Bước 5. Nhận xét, đánh giá hoạt động,
sản phẩm của HS

Trong Pascal, chú thích
được đặt giữa cặp dấu { }
hoặc (* *)
Trong C++, chú thích được
đặt giữa cặp dấu /* và */
3.3. Hoạt động luyện tập


Mục tiêu:
 Củng cố các kiến thức về các thành phần của ngôn ngữ lập trình;

11


 Hiểu khái niệm về tên, hằng, biến.



Phương thức:
 Phát vấn, câu hỏi, bài tập: Giáo viên trình chiếu các slide câu hỏi trắc nghi ệm
và yêu cầu học sinh đưa ra đáp án.

+ Hoạt động cá nhân: Học sinh tiếp nhận yêu cầu, suy nghĩ và trả lời các câu hỏi
trắc nghiệm.
Câu 1: Phát biểu nào dưới đây là đúng?
A. Ngữ nghĩa trong ngôn ngữ lập trình phụ thuộc nhiều vào ý muốn của ng ười
lập trình tạo ra
B. Mỗi ngôn ngữ lập trình đều có 3 thành phần là bảng ch ữ cái, cú pháp và ng ữ
nghĩa, nên việc khai báo kiểu dữ liệu, hằng, biến,… được áp dụng chung như
nhau cho mọi ngôn ngữ lập trình
C. Cú pháp của một ngôn ngữ lập trình là bộ quy t ắc cho phép người l ập trình
viết chương trình trên ngôn ngữ đó.
D. Các ngôn ngữ lập trình đều có chung một bộ chữ cái
Câu 2: Chọn phát biểu đúng trong các phát biểu dưới đây:
A. Ngoài bảng chữ cái, cú pháp, ngữ nghĩa, một ngôn ngữ l ập trình còn có các quy
tắc để khai báo biến, hằng,…
B. Ngoài bảng chữ cái, có thể dùng các kí tự thông dụng trong toán h ọc đ ể vi ết
chương trình
C. Chương trình có lỗi cú pháp có thể được dịch ra ngôn ngữ máy nh ưng không
thực hiện được
D. Cú pháp là bộ quy tắc dùng để viết chương trình
Câu 3: Phát biểu nào dưới đây là hợp lí nhất khi nói về Biến?
A. Biến là đại lượng nhận giá trị trước khi chương trình thực hiện
B. Biến là đại lượng được đặt tên và có giá trị thay đổi trong quá trình th ực hi ện
chương trình
C. Biến có thể lưu trữ nhiều loại giá trị khác nhau
D. Biến có thể đặt hoặc không đặt tên gọi

Câu 4: Phát biểu nào dưới đây là hợp lí nhất khi nói về Hằng?
A. Hằng là đại lượng nhận giá trị trước khi chương trình thực hiện
B. Hằng là đại lượng được đặt tên và có giá trị thay đổi trong quá trình th ực hi ện
chương trình
C. Hằng có thể lưu trữ nhiều loại giá trị khác nhau
D. Hằng được chương trình dịch bỏ qua
Câu 5: Phát biểu nào dưới đây là hợp lí nhất khi nói về Tên?
A. Tên gọi là đại lượng nhận giá trị trước khi chương trình thực hiện
B. Tên gọi là đại lượng được đặt tên và có giá trị thay đ ổi trong quá trình th ực
hiện chương trình
C. Tên gọi có thể lưu trữ nhiều loại giá trị khác nhau

12


D. Tên gọi do người lập trình tự đặt theo quy tắc do t ừng ngôn ng ữ l ập trình xác
định
Câu 6: Trong tin học, hằng là đại lượng
A. Có giá trị thay đổi trong quá trình thực hiện chương trình
B. Có giá trị không thay đổi trong quá trình thực hiện chương trình
C. Được đặt tên
D. Có thể thay đổi giá trị hoặc không thay đổi giá trị tùy thuộc vào bài toán
Câu 7: Các thành phần của ngôn ngữ lập trình là
A. Chương trình thông dịch và chương trình biên dịch
B. Chương trình dịch, bảng chữ cái, cú pháp, ngữ nghĩa
C. Bảng chữ cái, cú pháp, ngữ nghĩa
D. Tên dành riêng, tên chuẩn và tên do người lập trình định nghĩa
Câu 8: Khái niệm nào sau đây là đúng về tên dành riêng
A. Tên dành riêng là tên do người lập trình đặt
B. Tên dành riêng là tên đã được ngôn ngữ lập trình qui định dùng v ới ý nghĩa

riêng xác định, không được sử dụng với ý nghĩa khác
C. Tên dành riêng là tên đã được ngôn ngữ lập trìnhqui định đúng với ý nghĩa
riêng xác định, có thể được định nghĩa lại
D. Tên dành riêng là các hằng hay biến
Câu 9: Khai báo nào sau đây là đúng về tên chuẩn?
A. Tên chuẩn là tên do người lập trình đặt
B. Tên chuẩn là tên đã được ngôn ngữ lập trình qui định dùng v ới ý nghĩa riêng
xác định, không được sử dụng với ý nghĩa khác
C. Tên chuẩn là tên đã được ngôn ngữ lập trình qui định dùng với ý nghĩa nhất
định, có thể được định nghĩa lại
D. Tên chuẩn là các hằng hay biến
Câu 10: Phát biểu nào dưới đây là hợp lí nhất
A. Biến dùng trong chương trình phải khai báo
B. Biến được chương trình dịch bỏ qua
C. Biến có thể lưu trữ nhiều loại giá trị khác nhau
D. Biến là đại lượng nhận giá trị trước khi chương trình thực hiện



Dự kiến sản phẩm: Câu 1 – C, Câu 2 – D, Câu 3 – B, Câu 4 – A, Câu 5 – D, Câu 6 B, Câu 7 - C, Câu 8 - B, Câu 9 – C, Câu 10 – A.
Nhận xét, đánh giá sản phẩm, hoạt động: Giáo viên nhận xét và củng cố đáp
án cho từng câu hỏi.

3.4. Hoạt động vận dụng


Mục tiêu: Vận dụng kiến thức vừa học để trả lời các câu hỏi liên quan về lập
trình, ngôn ngữ lập trình, các thành phần, tên, hằng biến của ngôn ngữ lập trình.




Phương thức:

13


 Bài tập, câu hỏi: Giáo viên yêu cầu học sinh trả các câu hỏi và bài tập
 Hoạt động cá nhân: Học sinh tiếp nhận yêu cầu và trả lời câu hỏi


Dự kiến sản phẩm:

Câu 1. Tại sao phải xây dựng ngôn ngữ lập trình bậc cao?
Người ta phải xây dựng ngôn ngữ lập trình bậc cao vì:





Ngôn ngữ lập trình bậc cao gần gũi với tự nhiên hơn, thu ận ti ện cho đông đ ảo
người lập trình
Ngôn ngữ lập trình bậc cao nói chung không phụ thuộc vào loại máy, cùng m ột
chương trình có thể thực hiện trên nhiều máy khác nhau
Chương trình viết bằng ngôn ngữ bậc cao dễ hiểu, dễ hiệu chỉnh và d ễ nâng c ấp
hơn
Ngôn ngữ lập trình bậc cao cho phép làm việc với nhi ều ki ểu d ữ liệu và cách t ổ
chức dữ liệu đa dạng, thuận tiện cho một thuật toán

Câu 2. Chương trình dịch là gì? Tại sao cần phải có chương trình dịch?





Chương trình dịch là chương trình đặc biệt, có chức năng chuy ển đổi ch ương
trình được viết trên ngôn ngữ lập trình bậc cao thành ch ươnng trình th ực hi ện
được trên máy tính cụ thể.
Như ta đã biết, máy tính chỉ hiểu ngôn ngữ máy gồm dãy các số 0 và 1. Con người
viết chương trình bằng ngôn ngữ bậc cao. Máy tính không thể hi ểu được ngôn
ngữ đó nên cần một chương trình trung gian để chuyển ngôn ngữ bậc cao mà
con người viết sang ngôn ngữ máy có thể hiểu và thực thi. Đó là t ại sao c ần ph ải
có chương trình dịch.

Câu 3. Biên dịch và thông dịch khác nhau như thế nào?
Biên dịch

Thông dịch

Đọc và dịch toàn bộ mã nguồn trong
một lần

Đọc và dịch từng câu lệnh trong mã
nguồn

Thực thi chương trình vừa biên dịch
được

Thực thi từng câu lệnh sau khi câu lệnh
đó được dịch xong

Chương trình có thể được lưu trữ để

dùng về sau

Không được lưu trữ để dùng về sau

Câu 4. Hãy cho biết các điểm khác nhau giữa tên dành riêng và tên chuẩn?
Trả lời:


Tên dành riêng, còn gọi là từ khóa, là tên mà đ ược ngôn ng ữ l ập trình quy đ ịnh
dùng với ý nghĩa riêng xác định mà người lập trình không đ ược s ử d ụng v ới ý
nghĩa khác.
Ví dụ: program, uses, const,...



Tên chuẩn, là những tên được ngôn ngữ lập trình dùng với m ột ý nghĩa xác đ ịnh
nào đó. Tuy nhiên người lập trình có thể khai báo và sử dụng v ới ý nghĩa và m ục
đích khác.
Ví dụ: abs, integer, real, ...

14


Câu 5. Hãy tự viết ra ba tên đúng theo quy tắc của Pascal.
Trả lời:
Ba tên đúng theo quy tắc của Pascal và có độ dài khác nhau: tinhoc, tin_hoc_2007,
hanoi2007
Câu 6. Những biểu diễn sau đây không phải là biểu diễn hằng trong Pascal và chỉ rõ lỗi
trong từng trường hợp.
a) 150.0


b) -22

c) 6,23

d) '43'

e) A2

f) 1.06E-15

g) 4+6

h) ‘C

i) 'TRUE'

Trả lời:
Các biểu diễn không phải là hằng: c), g), h)


Nhận xét, đánh giá sản phẩm, hoạt động: Giáo viên nhận xét và củng cố đáp
án cho từng câu hỏi và nhận xét chung hoạt động của lớp.

3.5. Hoạt động Tìm tòi mở rộng
- Mục tiêu:
- Phương thức:
- Dự kiến sản phẩm:
- Nhận xét, đánh giá sản phẩm, hoạt động:
Tập Sơn, ngày ….. tháng …. năm 20…

DUYỆT CỦA TỔ CHUYÊN MÔN

15



×