TRƯỜNG THPT VAN COC TIN HỌC 11
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
Tiết 1: KHÁI NIỆM LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH
CÁC THÀNH PHẦN CỦA NGÔN NGỮ LẬP TRÌNH
I. Mục đích, yêu cầu.
Hiểu được khả năng của ng
2
lập trình bậc cao, phân biệt được với ng
2
máy và hợp ngữ.
Hiểu ý nghĩa và nhiệm vụ của chtrình dịch. Phân biệt được thông dịch và biên dịch.
Biết các thành phần cơ bản của ng
2
lập trình: bảng chữ cái, cú pháp, ngữ nghĩa.
Hiểu và phân biệt được các thành phần này
II. Lên lớp
1. Ổn định tình hình lớp.
Giới thiệu làm quen với HS của lớp.
Tạo tâm lý và quan hệ tốt với HS trước khi bắt đầu tiết học đầu tiên
2. Bài mới
Hđ của GV Hđ của HS Nd ghi bảng
ĐVĐ: Về lập trình các em chỉ mới
được tìm hiểu qua bài các bước để
giải bài toán trên máy tính chta chưa
có khái niệm cụ thể. Còn ngôn ngữ
lập trình chta cũng đã tìm hiểu tất
cả ở lớp 10.
H: Vậy có những loại ngôn ngữ lập
trình nào?
H: Hãy phân biệt ng
2
bậc cao với
các loại ng
2
khác?
Phân biệt ng
2
bậc cao: chtrình viết
bằng ng
2
bậc cao k
o
phụ thuộc vào
loại máy và phải dùng chtrình dịch
để chuyển về ng
2
máy.
H: Tóm lại ng
2
lập trình dùng để
làm gì?
Dẫn dắt: Vậy lập trình là gì? Chta
tìm hiểu k/n này.
Ghi bảng
Giải thích thêm về câu lệnh:
- Cl để diễn tả các thao tác trong các
bước của t/toán.
- Cl đơn thực hiện bước có 1 thao tác
- Cl ghép thực hiện bước gồm dãy
các thao tác.
Dẫn dắt: Chtrình viết bằng ng
2
máy sẽ
thực hiện được ngay, còn chtrình viết
bằng ng
2
bậc cao thì phải chuyển đổi
thành chtrình trên ng
2
máy mới có thể
Tl:Ng
2
máy, hợp
ngữ, ng
2
bậc cao.
Tl: (1-2 hs)
Tl: Lập trình
Ghi bài
Nghe giảng và tự ghi
chép
KHÁI NIỆM LẬP
TRÌNH VÀ NGÔN
NGỮ LẬP TRÌNH
1. K/n lập trình
(Sgk)
Ý nghĩa: tạo ra các
chtrình giải được bài
toán trên MT.
1
TRƯỜNG THPT VAN COC TIN HỌC 11
thực hiện được. Công cụ thực hiện
chuyển đổi đó gọi là chtrình dịch.
H: Input, Output của chtrình dịch là
gì? ( Có thể cho điểm miệng Hs trả
lời đúng )
H: nhiệm vụ quan trọng nhất của
chtrình dịch là gì?
* Phân biệt Thông dịch và Biên dịch
Phân tích Ví dụ Sgk
ĐVĐ sang bài mới: Để có thể sử
dụng một ng
2
lập trình nào đó thì
trước hết chta phải biết các thành
phần cơ bản có trong nó là gì?
Có ba thành phần cơ bản của ng
2
lập
trình: bảng chữ cái, cú pháp, ngữ
nghĩa.
Trước hết chta tìm hiểu bảng chữ
cái. Treo bảng chữ cái
* So sánh bảng chữ cái của ng
2
lập
trình với bảng chữ cái của ng
2
tự
nhiên
Về cú pháp:
Về ngữ nghĩa:
Trong từng ngữ cảnh khác nhau,
ngữ nghĩa của 1 tổ hợp kí tự là khác
nhau
Ví dụ: Sgk
* Tóm lại
+ Phân biệt giữa cú pháp và ngữ
nghĩa
+ Lỗi cú pháp
+ Lỗi ngữ nghĩa
Ví dụ:
>>++
=
lainguoc
bavabaneuba
S
1
1
22
Xem thử 3 cách mô tả cách nào
đúng.
Tl: In: chtrình viết
bằng ng
2
bậc cao
Out: chtrình trên ng
2
máy.
Tl: (2-3Hs) phát hiện
lỗi cú pháp của
chtrình nguồn
Tìm hiểu ví dụ Sgk
Cách1:
If a
2
+b
2
>1 then
if a>b then
s=a+b Else s =1;
(* a
2
+b
2
<1 thì s =?
*)
Cách2:
If a
2
+b
2
>1 then
begin
if a>b then
s=a+b
end
Else s =1;
(* a<b thì s =? *)
2. Chtrình dịch
a. K/niệm: Sgk
b. Phân loại:
Có 2 loại
- Thông dịch: lần lượt
dịch và thực hiện từng
câu lệnh.
- Biên dịch: dịch toàn
bộ chtrình rồi mới
thực hiện và được lưu
trữ để sử dụng lại lần
sau.
CÁC THÀNH
PHẦN CỦA NGÔN
NGỮ LẬP TRÌNH
1. Các thành phần
cơ bản
- Bảng chữ cái
- Cú pháp: bộ qui tắc
để viết chtrình
- Ngữ nghĩa
2
TRƯỜNG THPT VAN COC TIN HỌC 11
H: Lỗi ngữ nghĩa thường được phát
hiện khi nào?
Cách 3:
If a
2
+b
2
>1 and a>b
then s=a+b
Else s=1
Tl: Khi thực hiện
kiểm thử chtrình.
3. Củng cố:
Ba lớp của ng
2
lập trình và các mức của nó.
Vai trò của chtrình dịch
Khái niệm biên dịch và thông dịch
Lỗi cú pháp, lỗi ngữ nghĩa
4. Về nhà:
Đọc Bài đọc thêm 1 để tìm hiểu sơ về 1 số ng
2
lập trình
Soạn trước phần còn lại của bài 2. Trong đó chú ý các khái niệm mới: tên, hằng,
biến. Cách sử dụng nó trong lập trình
Ngày soạn:
Ngày dạy:
Tiết 2: CÁC THÀNH PHẦN CỦA NGÔN NGỮ LẬP TRÌNH
I. MỤC TIÊU
1. Kiến thức
Biết được một số khái niệm như: tên, tên chuẩn, tên dành riêng, tên do người
dùng đặt, hằng biến chú thích
2. Kĩ năng
Phân biệt được tên chuẩn với tên dành riêng và tên tự đặt
Nhớ các qui định về tên hằng biến
Biết đặt tên đúng, nhận biết được tên sai qui định
Sử dụng đúng chú thích
II. ĐỒ DÙNG DẠY HỌC
1. Giáo viên
Bảng chứa các tên đúng –sai để Hs chọn, bảng con, bút dạ.
2. Học sinh
Sách giáo khoa
III. HOẠT ĐỘNG DẠY HỌC
1. Hoạt động 1: Kiểm tra bài cũ
Hđ của GV Hđ của HS
H1: Hãy phân biệt chtrình thông dịch và
biên dịch?
H2: NNLT có những thành phần nào? Lỗi
cú pháp và lỗi ngữ nghĩa được phát hiện
Hs1: trình bày trên bảng.
Hs2: trả lời trước lớp
Hs3: nhận xét câu trả lời của Hs1
3
TRƯỜNG THPT VAN COC TIN HỌC 11
bằng gì?
Nhận xét, đánh giá cho điểm 3 Hs
2. Hoạt động 2: Tìm hiểu khái niệm tên trong thành phần của ngôn ngữ lập trình.
a. Mục tiêu:
Hs biết và phân biệt được 1 số loại tên: tên dành riêng, tên chuẩn, tên tự đặt.
b. Nội dung:
Mọi đối tượng trong chtrình đếu phải được đặt tên theo một qui tắc của NNLT
và từng chtrình dịch cụ thể.
Tên dành riêng (từ khóa): là những tên được NNLT qui định dùng với ý nghĩa
xác định, người lập trình ko được dùng với ý nghĩa khác
Tên chuẩn: là những tên được NNLT qui định dùng với ý nghĩa nào đó, người
lập trình có thể định nghĩa lại để dùng với ý nghĩa khác.
Tên do người dùng đặt: là tên được dùng theo ý nghĩa riêng của người lập trình,
phải được khai báo trước khi sử dụng và không được trùng với từ khóa.
c. Các bước tiến hành:
Hđ của GV Hđ của HS Nd ghi bảng
ĐVĐ: Mọi đối tượng trong
chtrình đếu phải được đặt tên
1. N/cứu Sgk nêu qui tắc đặt tên
trong Turbo Pascal?
2. Chọn các tên đúng trong bảng
sau:
A _24
A_BC A BC
5ad A5d
C#BC
Khẳng định lại các tên đúng
3. Y/cầu Hs n/cứu Sgk để biết các
khái niệm về tên dành riêng, tên
chuẩn, tên tự đặt.
Chia lớp thành 3 nhóm, mỗi
nhóm tìm hiểu và trình bày về
một loại tên và cho ví dụ.
Treo tranh chứa 1 số tên trong
NNLT Pascal đã được chuẩn bị
sẵn:
Type Const Integer
Dem
Function Byte Inc
Mang string
HS xác định tên theo từng loại
1. N/cứu sgk và trả lời:
+ Gồm chữ cái, chữ số,
dấu gạch dưới
+ Không quá 127 kí tự,
không bắt đầu bằng kí
tự số.
2. Quan sát và trả lời
A
A_BC
_24
A5d
3. N/cứu sgk và trả lời
Thảo luận theo nhóm
và cử người trình bày.
+ Tên dành riêng
+ Tên chuẩn
+ Tên do người dùng
đặt
Quan sát và ghi lên
bảng con.
+ Từ khóa: Type,
Const, function
+ Tên chuẩn: Integer,
1. Khái niệm Tên
(Sgk)
Ví dụ:
+ Tên dành riêng
+ Tên chuẩn
+ Tên do người dùng
đặt
Ví dụ:
4
TRƯỜNG THPT VAN COC TIN HỌC 11
tên?
Treo bảng con của 3 nhóm cho
nhóm khác nhận xét, bổ sung
Tổng kết vấn đề này
byte, string, inc
+ Tên tự đặt: dem,
mang
Quan sát kết quả
cnhóm khác, nhận xét
và bổ sung
3. Hoạt động 3:Tìm hiểu hằng, biến, chú thích
a. Mục tiêu: Hs biết được khái niệm về hằng, biến và chú thích. Phân biệt được hằng
và biến. Thấy được ý nghĩa của chú thích.
b. Nội dung:
* Hằng là đại lượng có giá trị không đổi trong quá trình thực hiện chtrình. Có 3
loại hằng
+ Hằng số học: số nguyên, só thực, có dấu và không dấu
+ Hằng xâu: chuổi kí tự bất kì, được đặt trong dấu nháy đơn
+ Hằng logic: có 2 giá trị True hoặc False
* Biến: là đại lượng đặt tên để lưu giá trị và giá trị này có thể thay đổi trong quá
trình thực hiện chtrình, biến dùng trong chtrình đều phải được khai báo.
* Chú thích : giải thích cho chtrình rõ ràng, dể hiểu. Được đặt trong cặp dấu
{ }
hoặc (* *)
c. Các bước tiến hành:
Hđ của GV Hđ của HS Nd ghi bảng
1. Y/cầu Hs cho 1 số ví dụ về
hằng số, hằng xâu, hằng logic
Trình bày k/niệm về các loại
hằng.
2. Ghi bảng: Xác định hằng số và
hằng xâu:
56 -3785 ‘485’
‘THPT’ 1.5E+2 45,7
H: hằng kí tự nháy đơn và hằng kí
tự nháy kép được biểu diễn như
thế nào?
3. Y/cầu Hs n/cứu Sgk và cho biết
k/niệm Biến
Cho ví dụ một số biến
4. Y/cầu Hs n/cứu Sgk và cho biết
chức năng của chú thích trong
chtrình.
Cho 1 số ví dụ khác về chú thích
1. Suy nghĩ và trả lời
+ Hằng số: 55 73.05
+ Hằng xâu: ‘211’
‘AB’
+ Hằng logic: False
True
Xem k/niệm hằng ở
Sgk
2. Quan sát và trả lời
+ Hằng số: 56; -3785;
1.5E+2
+ Hằng xâu: ‘485’
‘THPT’
Tl: nháy đơn: ’’’’
Nháy kép: ‘””’
3. N/cứu Sgk và trả lời
4. Cá nhân n/cứu Sgk
vá trả lời
Chú thích được đặt
2. Hằng và biến
a. Hằng
+ Hằng số
+ Hằng xâu
+ Hằng logic
b. Biến
K/niệm: (Sgk)
Ví dụ: Tong, dtoan,
…
c. Chú thích
Ví dụ:
{thu tuc nhap du lieu}
5
TRƯỜNG THPT VAN COC TIN HỌC 11
H: Tên biến và tên hằng thuộc
loại tên nào?
H: Các lệnh được viết trong cặp {
} có được TP thực hiện ko? Vì
sao?
giữa cặp dấu { } và (*
*) dùng để giải thích
chtrình rõ ràng dễ
hiểu.
Tl: Tên do người lập
trình đặt.
Tl: Không, vì đó là
dòng chú thích.
IV. ĐÁNH GIÁ CUỐI BÀI
1. Nội dung đã học .
Thành phần của NNLT: bảng chữ cái, cú pháp, ngữ nghĩa
Khái niệm: tên, từ khóa, tên chuẩn, tên tự đặt, biến, hằng, …
2. Câu hỏi, bài tập về nhà.
Làm bài tập 3, 4, 5 trang 13 Sgk
Xem bài đc thêm: Ngôn ngữ Pascal
Xem trước bài: Cấu trúc chtrình Sgk
Xem nội dung phụ lục B, trang 128 Sgk: Một số tên dành riêng
Ngày soạn:
Ngày dạy:
Tiết 3: BÀI TẬP
I. MỤC TIÊU
1. Kiến thức
- Biết có 3 lớp ngôn ngữ lập trình và các mức của ngôn ngữ lập trình: ngôn ngữ
máy, hợp ngữ và ngôn ngữ bậc cao.
- Biết vai trò của chương trình dịch.
- Biết khái niệm biên dịch và thông dịch.
- Biết các thành phần cơ bản của ngôn ngữ lập trình: bảng chữ cái, cú pháp và
ngữ nghĩa.
- Biết các thành phần cơ sở của Pascal: bảng chữ cái, tên, tên chuẩn, tên riêng
(từ khóa), hằng và biến.
2. Kĩ năng: Biết viết hằng và tên đúng trong một ngôn ngữ lập trình cụ thể.
3. Về tư duy và thái độ:
Nhận thức đượ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 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 các bài toán
bằng máy tính điện tử.
II. ĐỒ DÙNG DẠY HỌC
1. Giáo viên: chuẩn bị nội dung để giải bài tập cuối chương và một số câu hỏi trắc
nghiệm của chương.
2. Học sinh: Ôn lại kiến thức của chương, chuẩn bị bài tập cuối chương.
III. HOẠT ĐỘNG DẠY HỌC
1. Hoạt động 1: Kiểm tra bài cũ
6
TRƯỜNG THPT VAN COC TIN HỌC 11
Hđ của GV Hđ của HS
1. Phân biệt giữa Hằng và Biến? Cho một
số biến đúng?
2. Đâu là từ khóa trong các tên sau đây?
Integer Begin Do int chan
tong
- Nhận xét, đánh giá cho điểm
HS1: trả lời
Hs2: trả lời (Begin và Do)
2. Hoạt động 2:
Hđ của GV Hđ của HS Nd ghi bảng
ĐVĐ: Trước khi giải bài
tập trong SGK, các em tự
ôn lại một số kiến thức mà
chúng ta đã học ở các bài
trước dựa trên yêu cầu của
câu hỏi trang 13 SGK.
Đặt câu hỏi số 1: Tại sao
người ta phải xây dựng
các ngôn ngữ lập trình
bậc cao?
- Nhận xét, đánh giá và bổ
sung hướng dẫn cho học
sinh trả lời câu hỏi số 1:
Đặt câu hỏi 2: Biên dịch
và thông dịch khác nhau
như thế nào?
Phân tích câu trả lời của
học sinh.
- Đọc yêu cầu của câu
hỏi và bài tập cuối
chương trang 13 SGK.
- Suy nghĩ để đưa ra
phương án trả lời.
- Suy nghĩ, trả lời câu
hỏi.
- Suy nghĩ, trả lời câu
hỏi.
Câu 1:Ngôn ngữ bậc cao
+ gần với ngôn ngữ tự nhiên
hơn,
+ không phụ thuộc vào phần
cứng máy tính và một chương
trình có thể thực hiện trên
nhiều máy tính khác nhau;
+ dễ hiểu, dễ hiệu chỉnh và dễ
nâng cấp;
+ 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ộc toán.
Câu 2:
Trình biên dịch: 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? dịch toàn bộ
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à có thể lưu trữ
lại để sử dụng về sau khi cần
thiết.
Trình thông dịch lần lượt dịch
từng câu lệnh ra ngôn ngữ máy
rồi thực hiện ngay câu lệnh
vừa dịch được hoặc báo lỗi
nếu không dịch được
3. Hoạt động 3:
Hđ của GV Hđ của HS Nd ghi bảng
Đặt câu hỏi 3: 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? Viết 3 tên đúng
quy tắctrong Pascal?
- Gọi hs trả lời và cho ví
dụ
Suy nghĩ, trả lời, giải
thích
Câu 3: Tên dành riêng không
được dùng khác với ý nghĩa đã
xác định, tên chuẩn có thể
dùng với ý nghĩa khác.
VD:
Tên dành riêng trong Pascal:
program, uses, const, type, var,
7
TRƯỜNG THPT VAN COC TIN HỌC 11
- Phân tích câu trả lời của
học sinh.
Hỏi: Nêu lại quy tắc đặt
tên trong Pascal?
- Gọi 3 học sinh lên bảng
cho ví dụ về tên do người
lập trình đặt.
*Nhận xét, sửa chữa, góp
ý.
Trả lời
Lên bảng
Chú ý, ghi nhớ
begin, end.
Tên chuẩn: trong Pascal abs,
integer.
4. Hoạt động 4:
Hđ của GV Hđ của HS Nd ghi bảng
Đặt câu hỏi 4: Hãy cho
biết những biểu diễn nào
dưới đây không phải là
biểu diễn hằng trong
Pascal và chỉ rõ trong từng
trường hợp:
- Nhận xét, giải thích
Trả lời giải thích từng
câu một
Câu 4:
IV. ĐÁNH GIÁ CUỐI BÀI
Câu hỏi, bài tập về nhà
Xem trước Chương 3 gồm các bài: Cấu trúc chương trình và Một số kiểu dữ
liệu chuẩn. Xem trước nội dung phụ lục B phần 3: Một số kiểu dữ liệu chuẩn. (trang
129 Sgk)
Bài tập kiểm tra trắc nghiệm cuối chương: (15 phút)
Câu 1:Chương trình viết bằng hợp ngữ không có đặc điểm nào trong các đặc điểm
sau:
A. Ngắn gọn hơn so với chương trình được viết bằng ngôn ngữ bậc cao.
B. Tốc độ thực hiện nhanh hơn so với chương trình được viết bằng ngôn ngữ bậc cao.
C. Diễn đạt gần với ngôn ngữ tự nhiên.
D. Sử dụng trọn vẹn các khả năng của máy tính
Câu 2: Chương trình viết bằng ngôn ngữ bậc cao không có đặc điểm nào trong các
đặc điểm sau:
A. Không phụ thuộc vào loại máy, chương trình có thể thực hiện trên nhiều loại máy.
B. Ngắn gọn, dễ hiểu, dễ hiệu chỉnh và nâng cấp.
C. Kiểu dữ liệu cà cách tổ chức dữ liệu đa dạng, thuận tiện cho mô tả thuật toán.
D. Máy tính có thể hiểu và thực hiện trực tiếp chương trình này.
Câu 3: Chương trình dịch không có khả năng nào trong các khả năng sau?
A. Phát hiện được lỗi ngữ nghĩa. C. Phát hiện được lỗi cú pháp.
8
1 150.0 hằng số
2 –22 hằng số
3 6,23 K
4 ‘43’ hằng xâu
5 A20 K
6 1.06E-
15
hằng số
7 4+6 b/thức hằng
8 ‘C K
9 ‘TRUE’ hằng xâu
TRƯỜNG THPT VAN COC TIN HỌC 11
B. Thông báo lỗi cú pháp. D. Tạo được chương trình dịch.
Câu 4: Nhận biết đúng/sai trong Pascal?
ST
T
Tên biến Đúng(Đ)/Sai(S)
1 1hoten S
2 Hoten Đ
3 Ho ten S
4 Ho_ten Đ
5 Ho-ten1 S
6 Hoten1 Đ
Câu 5: Ghép mỗi câu ở cột 1 với một câu thích hợp ở cột 2 trong bảng sau:
Cột 1 Cột 2
(1) Biên dịch (A) là các đại lượng có giá trị không đổi trong quá
trình thực hiện chương trình.
(2) Thông dịch (B) dịch và thực hiện từng câu lệnh, nếu còn câu lệnh
tiếp theo thì quá trình này còn tiếp tục.
(3) Chương trình viết trên
ngôn ngữ lập trình bậc
cao.
(C) 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.
(4) Biến (d) dịch toàn bộ 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à có thể
lưu trữ để sử dụng lại khi cần thiết.
(5) Hằng (E) phải được chuyển đổi thành chương trình trên
ngôn ngữ máy mới có thể thực hiện được.
Ngày soạn:
Ngày dạy:
CHƯƠNG II: CHƯƠNG TRÌNH ĐƠN GIẢN
Tiết 4: CẤU TRÚC CHƯƠNG TRÌNH
I. MỤC TIÊU
1. Kiến thức
Hiểu chtrình là sự mô tả của thuật toán bằng một NNLT
Biết cấu trúc của một chtrình đơn giản: cấu trúc chung và các thành phần
2. Kĩ năng
Nhận biết được thành phần của một chtrình đơn giản
II. ĐỒ DÙNG DẠY HỌC
1. Giáo viên
Máy tính, máy chiếu projector .
Một số chtrình mẫu viết sẵn.
2. Học sinh
Sách giáo khoa
9
TRƯỜNG THPT VAN COC TIN HỌC 11
III. HOẠT ĐỘNG DẠY HỌC
1. Hoạt động 1: (5 phút) Kiểm tra bài cũ
Hđ của GV Hđ của HS
H1: Phân biệt tên chuẩn và từ khóa? Tên
hằng, tên biến thuộc loại tên nào?
H2: Cho một số tên biến, hằng đúng qui
cách?
Nhận xét, đánh giá cho điểm 3 hs
Hs1: trả lời trước lớp
Hs2: trình bày trên bảng
Hs3: nhận xét phần trả lời của Hs2
2. Hoạt động 2: (5phút) Tìm hiểu cấu trúc chung của chtrình
a. Mục tiêu: Hs biết được chtrình có 2 phần.
b. Nội dung: Cấu trúc chtrình có 2 phần: phần khai báo, phần thân.
c. Các bước tiến hành:
Hđ của GV Hđ của HS Nd ghi bảng
1. Câu hỏi gợi ý: Một bài tập
làm văn thường viết có mấy
phần? Các phần có thứ tự
không? Tại sao phải chia ra như
vậy?
2. Y/cầu Hs n/cứu Sgk và trả
lời các câu hỏi sau:
- Một chtrình có cấu trúc mấy
phần?
3. Chiếu lên bảng chtrình:
Pro gram vidu;
Begin
W rite(‘ ch ao
cac ban’);
Readln;
End.
H: Đâu là phần khai báo và
phần thân chtrình?
Dẫn dắt chuyển sang Hđ 3:
Chtrình trên chỉ là chtrình đơn
giản. Để có thể nhận biết các
thành phần trong chtrình bất kỳ,
ta cần tìm hiểu nội dung của
từng thành phần.
1. Suy nghĩ và trả lời.
- Có ba phần
- Có thứ tự: mở bài, thân
bài, kết luận.
- Dễ viết, dễ đọc và dễ
hiểu nội dung .
2. N/cứu sgk, thảo luận
và trả lời:
Có 2 phần:
[<phần khai báo>]
<phần thân chtrình>
3. Quan sát và trả lời
- Phần bôi đen là phần
thân. Còn lại là phần
khai báo.
CẤU TRÚC
CHƯƠNG TRÌNH
1. Cấu trúc chung
Có 2 phần:
[<phần khai báo>]
<phần thân chtrình>
3. Hoạt động 3: (15phút) Tìm hiểu các thành phần của chtrình.
a. Mục tiêu: Hs biết được nội dung của các thành phần trong chtrình
b. Nội dung:
Phần khai báo: khai báo tên chtrình, khai báo các thư viện, khai báo hằng, khai
báo biến, khai báo chtrình con,
10
TRƯỜNG THPT VAN COC TIN HỌC 11
Phần thân: bao gồm dãy lệnhđược đặt trong cặp dấu hiệu mở đầu và kết thúc
Begin
Các câu lệnh;
End.
c. Các bước tiến hành:
Hđ của GV Hđ của HS Nd ghi bảng
1. Y/cầu Hs n/cứu Sgk và trả lời
câu hỏi:
- Trong phần khai báo có những
khai báo nào?
Dẫn dắt: Cách khai báo các đối
tượng này trong chtrình như thế
nào?
2. Y/cầu Hs tiếp tục n/cứu Sgk
và lấy ví dụ cho từng loại khai
báo.
* Cách khai báo biến sẽ được
tìm hiểu riêng trong tiết sau.
* Khai báo và sử dụng CTC
được trình bày ở chươngVI.
3. Y/cầu Hs cho biết cấu trúc
của phần thân chtrình.
1. N/cứu sgk, thảo luận
và trả lời:
- Khai báo tên chtrình
- Khai báo thư viện CTC
- Khai báo hằng
- Khai báo biến
- Khai báo CTC
2. N/cứu sgk, thảo luận
và cho ví dụ:
- Khai báo tên chtrình
Program tim_uscln;
- Khai báo thư viện
CTC
Uses crt;
- Khai báo hằng
Const max = 1000;
Pi = 3.14;
- Khai báo biến
Var a, d, c: integer;
Kt:char;
* Ghi nhớ các ví dụ.
3. Trả lời
Begin
Dãy các câu lệnh;
End.
2. Các thành phần của
chương trình
a. Phần khai báo
Program tên_chtrình;
Uses tên_thư_viện;
Const tên_hằng =
giá_trị;
Var tên_biến:
kiểu_dữ_liệu;
b. Phần thân
4. Hoạt động 4: (15 phút) Xét một vài ví dụ về những chtrình đơn giản
a. Mục tiêu: Hs nhận biết được từng phần của một chtrình đơn giản.
b. Nội dung: Một vài chtrình đơn giản.
c. Các bước tiến hành:
Hđ của GV Hđ của HS Nd ghi bảng
1. Chiếu lên bảng một chtrình
đơn giản.
Pro gram vidu;
Uses crt;
Var x, y: byte;
z:word;
Begin
1. Quan sát và trả lời
11
TRƯỜNG THPT VAN COC TIN HỌC 11
z:= x+y;
writeln(z);
readln;
End.
H1: Phần khai báo của
chtrình?
H2: Phần thân của chtrình,
+ lệnh z:=x+y có ý nghĩa gì?
+ lệnh writeln có chức năng
gì?
2. Có thể bỏ bớt các phần nào
trong chtrình trên, nhưng kết
quả chtrình không thay đổi?
3. Chia lớp thành 4 nhóm
Y/cầu:
+ 2 nhóm lấy một ví dụ về
chtrình Pascal chỉ có phần
thân.
+ 2 nhóm còn lại chtrình
không có phần khai báo biến
* Đính bìa các nhóm lên bảng,
cho các nhóm nhận xét và
đánh giá chéo.
- Phần khai báo (gồm 3
dòng đầu): khai báo tên
CT, khai báo thư viện,
khai báo biến.
- Còn lại là phần thân.
+ lệnh gán (: =)
+ lệnh đưa thông tin ra
màn hình.
2. Suy nghĩ, thảo luận
và trả lời.
Dòng khai báo tên
Dòng khai báo thư viện.
3. Thảo luận và trả lời
Trình bày trên bìa trắng
IV. ĐÁNH GIÁ CUỐI BÀI
1. Nội dung đã học
Một chtrình gồm có 2 phần: phần khai báo và phần thân.
2. Câu hỏi, bài tập về nhà
Xem trước bài: Một số kiểu dữ liệu chuẩn. Khai báo biến. (trang 21-23 sgk)
Xem trước nội dung phụ lục B phần 3: Một số kiểu dữ liệu chuẩn. (trang 129
Sgk)
Ngày soạn:
Ngày dạy:
Tiết 5 MỘT SỐ KIỂU DỮ LIỆU CHUẨN
KHAI BÁO BIẾN
I. MỤC TIÊU
1. Kiến thức
Biết một số kiểu dữ liệu chuẩn: nguyên, thực, kí tự, logic.
12
TRƯỜNG THPT VAN COC TIN HỌC 11
Hiểu cách khai báo biến.
2. Kĩ năng
Xác định được kiểu cần khai báo của dữ liệu đơn giản.
Biết khai báo biến đúng.
3. Tư duy – thái độ:
Tư duy logic.
II. ĐỒ DÙNG DẠY HỌC
1. Giáo viên: Máy tính, máy chiếu projector, một số ví dụ minh hoạ.
Bảng treo chứa một số khai báo biến cho Hs chọn Đúng - Sai
2. Học sinh: SGK
III. HOẠT ĐỘNG DẠY HỌC
1. Hoạt động 1: Kiểm tra bài cũ
Hđ của GV Hđ của HS
H1: Nêu cấu trúc chung của một chương
trình?
H2: Nêu cấu trúc của các phần khai báo: tên
chương trình, hằng, thư viện?
Nhận xét, đánh giá cho điểm 3 hs
Hs1: trả lời trước lớp
Hs2: trình bày trên bảng
Hs3: nhận xét phần trả lời của Hs2
2. Hoạt động 2: Đặt vấn đề
Hđ của GV Hđ của HS Nd ghi bảng
Trong toán học để thực hiện được
tính toán cần phải có các tập số.
Đó là các tập số nào ?
Trong lập trình Pascal cũng có
các tập hợp, mỗi tập hợp có 1 giới
hạn nhất định.
Tl: Tập hợp số tự
nhiên, nguyên, hữu tỉ,
thực.
Đọc sách.
3. Hoạt động 3: Một số kiểu dữ liệu chuẩn.
a. Mục tiêu: Biết được tên và giới hạn biểu diễn của một số kiểu dữ liệu chuẩn.
b. Nội dung:Kiểu số nguyên: Byte, Integer, Word, Longint
Kiểu số thực: Real, Extended
Kiểu kí tự: là kí tự thuộc bảng mã ASCII (char)
Kiểu logic: là tập hợp gồm 2 giá trị True và False, là kết quả của phép so
sánh.
c. Các bước tiến hành:
Hđ của GV Hđ của HS Nd ghi bảng
1. Kiểu dữ liệu chuẩn là một tập
hữu hạn các giá trị, mỗi kiểu dữ
liệu cần một dung lượng bộ nhớ
cần thiết đẻ lưu trữ và xác định các
phép toán có thể tác động lên dữ
liệu.
2. Y/cầu Hs n/cứu Sgk trả lời các
câu hỏi sau:
H
1
: Có bao nhiêu dữ liệu chuẩn
trong ngôn ngữ Pascal ?
H
2
: Trong ngôn ngữ Pascal, có
1. Chú ý, lắng nghe
- Liên tưởng các tập số
trong toán học với một
kiểu dữ liệu trong
Pascal.
2. N/cứu Sgk và trả lời
Tl
1
: Có 4 kiểu: nguyên,
thực, kí tự, lôgic.
Tl
2
: Có 4 loại: byte,
1. Kiểu dữ liệu
chuẩn
13
TRƯỜNG THPT VAN COC TIN HỌC 11
những kiểu nguyên nào thường
dùng, phạm vi biểu diễn của mỗi
loại?
H
3
: Trong ngôn ngữ Pascal, có
những kiểu thực nào thường dùng,
phạm vi biểu diễn của mỗi loại?
H
4
: Trong ngôn ngữ Pascal, có bao
nhiêu kiểu kí tự?
H
5
: Trong ngôn ngữ Pascal, có
bao nhiêu kiểu logic, gồm các giá
trị nào?
Treo bảng
3. Giải thích một số vấn đề cho Hs
+ Vì sao phạm vi biểu diễn của các
loại số nguyên là khác nhau?
+ Miền giá trị của các loại kiểu
thực, số chữ số có nghĩa?
4. Ứng dụng: Muốn tính toán các
giá trị: 5, 8, 9.05 ta phải sử dụng
kiểu dữ liệu nào?
integer, word, longint.
Tl
3
: Có 2 loại: Real,
Extended.
Tl
4
: Có 1 loại: char
Tl
5
: Có 1 loại: Boolean
gồm 2 giá trị: True và
False
Quan sát
3. Chú ý lắng nghe và
ghi nhớ.
4. Suy nghĩ và trả lời
Kiểu thực (Real)
Sgk
Sgk
- Bảng tổng hợp giới
hạn biểu diễn một số
kiểu dữ liệu thường
dùng
4. Hoạt động 4: Tìm hiểu cách khai báo biến
a. Mục tiêu:
- Hs biết được rằng mọi biến trong chtrình đều phải được khai báo tên và kiểu
dữ liệu.
- Hs biết được cấu trúc chung của khai báo biến trong NNLT Pascal, khai báo
được biến khi lập trình.
b. Nội dung: Cấu trúc chung của khai báo biến trong lập trình bằng Pascal:
Var tên_biến_1: kiểu_dữ_liệu_1;
tên_biến_2: kiểu_dữ_liệu_2;
tên_biến_N: kiểu_dữ_liệu_N;
biếnA, biếnB, , biến F: kiểu_dữ_liệu;
c. Các bước tiến hành:
Hđ của GV Hđ của HS Nd ghi bảng
1. Yêu cầu học sinh nghiên cứu
sách GK và cho biết vì sao phải
khai báo biến ?
Cấu trúc chung của khai báo biến
bằng Pascal:
1. Đọc sách.
Mọi biến dùng trong
chtrình đều phải được
khai báo tên biến và
kiểu dữ liệu của biến.
Tên biến dùng để xác
lập quan hệ giữa biến
với địa chỉ bộ nhớ nơi
lưu giữ giá trị của biến.
Var <danh sách
biến>: <kiểu dữ liệu>;
2. Khai báo biến
14
TRƯỜNG THPT VAN COC TIN HỌC 11
Cho ví dụ: Cần một biến kiểu
nguyên, và một biến kiểu logic.
2. Treo bảng có chứa một số khai
báo và yêu cầu Hs chọn khai báo
đúng trong Pascal?
3. Treo bảng có chứa một số khai
báo trong Pascal.
Hỏi: Có tất cả bao nhiêu biến, bộ
nhớ phải cấp phát là bao nhiêu?
Var a: integer;
B: boolean;
2.Quan sát và chọn
khai báo đúng
Var x, y, z: word;
I: byte;
- Có 5 biến
- Tổng bộ nhớ cần cấp
phát: x (2byte), y
(2byte), n(6byte),
i(1byte), c(1byte)
2+2+6+1+1=12byte
Chọn khai báo đúng
Var x, y, z: word;
n m: real;
X: longint;
I: byte;
a: inte gr;
true: boolean;
Var x, y: word;
n : real;
i: byte;
c: char;
IV. ĐÁNH GIÁ CUỐI BÀI
1. Nội dung đã học
Các kiểu dữ liệu chuẩn: nguyên, thực, kí tự, lôgic
Cách khai báo biến
2. Câu hỏi, bài tập về nhà
Làm bài tập 1,2,3,4,5 sgk trang 35
Xem trước bài: Phép toán, biểu thức, lệnh gán. sgk trang 24
Ngày soạn:
Ngày dạy:
Tiết 6 PHÉP TOÁN, BIỂU THỨC, CÂU LỆNH GÁN
I. MỤC TIÊU
1. Kiến thức
Biết được 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ệ.
Hiểu lệnh gán.
Biết được một số hàm thông dụng trong Pascal
2. Kĩ năng
Viết được lệnh gán
Viết được các biểu thức số học và logic với các phép toán thông dụng.
II. ĐỒ DÙNG DẠY HỌC
1. Giáo viên
Tranh chứa bảng các hàm số học, bảng chân trị.
Máy tính, Projector.
2. Học sinh Sgk
15
TRƯỜNG THPT VAN COC TIN HỌC 11
3. Tư duy và thái độ :
Phát triển tư duy lôgic, linh hoạt, có tính sáng tạo.
Biết thể hiện về tính cẩn thận chính xác trong tính toán cũng như lập luận.
III. HOẠT ĐỘNG DẠY HỌC
1. Hoạt động 1: Kiểm tra bài cũ
Hđ của GV Hđ của HS
- Viết khai báo biến của bài toán:
Cho 2 số nguyên N, M. Tính giá trị của biểu
thức p= (m+n)/(m*n).
Ghi đề bài và gọi tên 2 hs
- Hỏi thêm: Bộ nhớ cần cấp phát cho các
biến đó là bao nhiêu?
Nhận xét, đánh giá cho điểm.
2Hs lên bảng làm việc độc lập.
Đ/a:
Var N, M: Integer;
P:real;
Đ/a: 10Byte
2. Hoạt động 2: Tìm hiểu một số phép toán
a. Mục tiêu: HS biết được tên và ký hiệu các phép toán, biết cách sử dụng các phép
toán đối với mỗi kiểu dữ liệu.
b. Nội dung:
+ Phép toán số học: + , - , *, / , DIV, MOD.
+ Phép toán quan hệ: <, <=, > , >=, =, < > , giá trị logic (true hoặc false)
+ Phép toán lôgic: NOT , OR , AND.
c. Các bước tiến hành:
Hđ của GV Hđ của HS Nd ghi bảng
1. ĐVĐ: Để mô tả các thao tác
trong thuật toán, mỗi NNLT đều
xác định và sử dụng một sô
kháiniệm cơ bản: phép toán, biểu
thức, gán giá trị.
2. Hãy kể các phép toán đã học ở
toán học?
- Trong NNLT Pascal cũng có
các phép toán đó nhưng được
diễn tả bằng một cách khác.
3. Y/cầu Hs n/cứu Sgk và cho
biết có bao nhiêu nhóm phép
toán?
H1: Phép chia (/) được sử dụng
cho kiểu dữ liệu nào?
H2: Phép Mod, Div được sử
dụng cho kiểu dữ liệu nào?
1.Chú ý lắng nghe
2. Suy nghĩ và trả lời
- Phép: cộng, trừ, nhân,
chia, lấy dư, so sánh,
chia lấy nguyên.
3. N/cứu sgk và trả lời.
- Phép toán số học: +, -,
*, /, div, mod
- phép toán quan hệ: <,
>, =, >=, <=, <>
- phép toán logic: and,
or, not
Tl: kiểu thực
Tl: kiểu nguyên.
Tl: kiểu logic
1. Phép toán trong
Pascal
- Phép toán số học: +,
-, *, /, div, mod
- Phép toán quan hệ:
<, >, =, >=, <=, <>
- Phép toán logic:
and, or, not
16
TRƯỜNG THPT VAN COC TIN HỌC 11
H3: Kết quả của phép toán quan
hệ thuộc kiểu dữ liệu nào?
3. Hoạt động 3: Tìm hiểu về biểu thức
a. Mục tiêu: Hs biết khái niệm về biểu thức số học, quan hệ, lôgic. biết cách xây dựng
các biểu thức đó.
Biết được một số hàm số học chuẩn trong lập trình
b. Nội dung:
- Biểu thức số học nhận được từ hằng số, biến số và hàm số liên kết.
- Nắm bắt được tuần tự các bước khi thực hiện biểu thức số học.
- Biểu thức logic được cấu thành từ các biểu thức quan hệ.
c. Các bước tiến hành:
Hđ của GV Hđ của HS Nd ghi bảng
1. ĐVĐ: Trong toán học ta đã làm
quen với khái niệm biểu thức. Hãy
cho biết các yếu tổ cơ bản xây
dựng nên biểu thức?
Nếu trong một bài toán mà toán
hạng là hằng số, biến, hoặc hàm số
và toán tử là các phép toán số học
thì biểu thức có tên gọi là gì?
2. Treo bảng có chứa các biểu thức
toán học, yêu cầu: sử dụng phép
toán số học để biễu diễn biểu thức
toán học đó thành biểu thức trong
NNLT.
a. 4x - 2y b. x +
yx −
1
c.
c
b
a
cba
+
++
2
-
ac
cb
−
2
- Từ việc xây dựng các biểu thức
trên, hãy nêu thứ tự thực hiện các
phép toán.
3. Nêu vấn đề:Trong toán học ta đã
làm quen với một số hàm số học,
hãy kể tên?
- Muốn tính ax
2
+ 1 ta viết thế
nào?
- Muốn tính
x
,
x
, sinx ta làm
thế nào?
Tính các giá trị đó một cách đơn
giản người ta đã xây dựng sẵn một
số đơn vị chương trình trong các
1. Suy nghĩ, trả lời
- Gồm 2 phần: toán
hạng, toán tử
- Biểu thức số học
2. Quan sát bảng và lên
bảng trả lời.
a. 4*x-2*y
b. x+1/(x-y)
c. ((a+b+c)/((2*a /b)
+c)) - (b*b-c)/(a*c)
N/cứu sgk và trả lời
- Thực hiện trong
ngoặc trước; ngoài
ngoặc sau. Nhân, chia,
chia lấy nguyên, chia
lấy dư trước; cộng trừ
sau.
3. Nhớ lại và trả lời
Hàm trị tuyệt đối, hàm
căn bậc 2, hàm sin
- HS trả lời: 2*x*x+1
- HS chưa trả lời được
2. Biểu thức số học
Toán hạng: hằng,
biến, hàm số.
Toán tử: +, -, *, /,
mod, div.
* Thứ tự thực hiện:
Sgk
* Chú ý:
+ Nên dùng biến
trung gian để tránh
việc tính 1 biểu thức
nhiều lần.
+ Biểu thức có chứa
hằng hoặc biến kiểu
thực, thì giá trị của
biểu thức cũng thuộc
kiểu thực
3. Hàm số học chuẩn
17
TRƯỜNG THPT VAN COC TIN HỌC 11
thư viện chương trình giúp người
lập trình tính toán nhanh hơn.
- Treo tranh chứa bảng một số hàm
chuẩn.
Yêu cầu: Học sinh điền thêm một
số thông tin với các chức năng của
hàm.
- Cho biểu thức
1
12
2
−
+−
x
xx
Hãy biểu diễn biểu thức toán trong
biểu thức trong NNLT.
4. Nêu vấn đề: Trong lập trình ta
phải so sánh 2 giá trị nào đó trước
khi thực hiện lệnh bằng cách sử
dụng biểu thức quan hệ . Biểu thức
quan hệ còn gọi là biểu thức so
sánh được dùng để so sánh 2 giá trị
đúng hoặc sai.
- Cho một ví dụ về biểu thức quan
hệ.
- Thứ tự thực hiện của biểu thức
quan hệ?
- Kết quả mà phép toán quan hệ
thuộc kiểu dữ liệu nào?
5. Biểu thức logic là biểu thức
quan hệ được liên kết với nhau bởi
phép toán logic
- Hãy quan sát biểu thức trong toán
học sau: 2< x ≤ 8 và biễu diễn
bthức này trong NNLT Pascal.
- Thứ tự thực hiện của bthức lôgic?
- Kết quả mà bthức lôgic thuộc
kiểu dữ liệu nào?
Treo tranh có chứa bảng chân trị
của A và B, y/cầu hs điền giá trị
cho A and B, A or B, not B
Nghiên cứu SGK - 26
và quan sát tranh vẽ,
lên bảng điền tranh
- Suy nghĩ và trả lời:
(abs(x) - sqrt(2*x+1)) /
(sqr(x)-1)
4. Lắng nghe, suy nghĩ.
- Trả lời: x + y < 2*
x*y
+ Tính gtrị của các
bthức
+ Thực hiện phép toán
qhệ
- Kiểu logic
5. Lắng nghe, theo dõi
sự sự dẫn dắt của Gv
để trả lời
- Kết hợp SGK, trả lời:
(x > 2)and(x <= 8)
+ Thực hiện các bthức
qhệ
+ Thực hiện p/toán
lôgic
- Kiểu logic
Suy nghĩ và trả lời
bằng cách điền vào
bảng
A B A
an
A
or
N
ot
Cách viết cho một số
hàm số học chuẩn :
Tên hàm (đối số)
+ Đối số là một hay
nhiều biểu thức số
học đặt trong dấu
ngoặc ( ) sau tên
hàm .
VD: (SGK - 26).
4. Biểu thức quan
hệ:
Cấu trúc chung:
<BT1> < phép toán
quan hệ > <BT2>
+ trong đó BT1 và
BT2 phải cùng kiểu.
+ Kết quả của biểu
thức quan hệ là
TRUE hoặc FALSE.
VD: - 5 > 2
5. Biểu thức logic.
- Biểu thức logic đơn
giản là hằng hoặc
biến logic.
- Dùng để liên kết
nhiều biểu thức quan
hệ lại với nhau.
Ví dụ: Cho 3 số a, b,
c. Viết điều kiện xác
định a, b, c là độ dài 3
cạnh của 1 tam giác.
(a+b>c) and (b+c>a)
and (a+c>b)
18
TRƯỜNG THPT VAN COC TIN HỌC 11
d
B
B A
0 0 0 0 1
0 1 0 1 1
1 0 0 1 0
1 1 1 1 0
4. Hoạt động 4: Câu lệnh gán(:=)
a. Mục tiêu: HS biết được chức năng cấu trúc chung của lệnh gán trong NN Pascal,
viết lệnh đúng khi lập trình.
b. Nội dung:
- Lệnh gán dùng để tính giá trị một biểu thức và chuyển nó vào một biến.
- Cấu trúc: Tên biến:= biểu thức;
c. Các bước tiến hành:
Hđ của GV Hđ của HS Nd ghi bảng
- Mỗi NNLT có cách viết lệnh
gán khác nhau, chẳng hạn như
trong Pascal có lệnh gán sau: i : =
8 + 3
- Giải thích: Lấy 8 cộng với 3,
đem kết quả đặt vào i , ta được i =
11.
Hỏi: Hãy cho biết chức năng của
lệnh gán?
- Y/cầu hs Sgk cho biết cấu trúc
chung của lệnh gán trong NNLT
Pascal
Cho một số ví dụ về lệnh gán
Cần chú ý gì khi viết lệnh gán?
Phân tích câu trả lời của học sinh
sau đó tổng hợp lại
+ viết đúng kí hiệu gán.
+ bthức bên phải cần được xác
định gtrị trước khi gán.
+ kiểu của bthức bên phải phải
phù hợp với kiểu của biến.
Treo tranh, giới thiệu ví dụ về
Pascal
Cho chtrình:
Var x, y: integer;
T:boolean;
Begin
x:=3; y:=9;
x:=x-1; y:=y div 2;
- Quan sát ví dụ và suy
nghĩ để trả lời.
+ Tính gtrị của bthức
+ Gán gtrị tính được
vào tên biến.
<tên biến> := <biểu
thức>;
Thảo luận và đưa ra ý
kiến.
Quan sát, làm thử
ch/trình qua các lệnh
và trả lời:
6. Câu lệnh gán.
- Lệnh gán là cấu trúc
cơ bản của mọi
NNLT, thường dùng
để gán giá trị cho
biến.
Cấu trúc:
< tên _biến>:=
<b_thức>;
VD:
x:= (b*b-4* a*c);
i:= i+1;
j:= j-1;
19
TRƯỜNG THPT VAN COC TIN HỌC 11
Write(‘x=’,x); writeln(‘
y=’,y);
T:= x<y; write(T);
readln
End.
Ch/trình in ra màn hình gtrị bằng
bao nhiêu?
x=2 y=4
TRUE
IV. ĐÁNH GIÁ CUỐI BÀI
1. Nội dung đã học
2. Câu hỏi, bài tập về nhà
Xem trước bài: Các thủ tục chuẩn vào/ra đơn giản
Soạn thảo, dịch, thực hiện và hiệu chỉnh chương trình.
Ngày soạn:
Ngày dạy:
Tiết 7 CÁC THỦ TỤC CHUẨN VÀO RA ĐƠN GIẢN
SOẠN THẢO, DỊCH, THỰC HIỆN VÀ HIỆU CHỈNH CHƯƠNG TRÌNH
I. MỤC TIÊU
1. Kiến thức
- Biết được ý nghĩa của các thủ tục vào/ ra chuẩn đối với lập trình
- Biết được các cấu trúc chung của thủ tục vào/ ra trong NNLT Pascal
- Biết được các bước để hoàn chỉnh một chtrình
- Biết được các file cơ bản của Turbo Pascal 7.0
2. Kĩ năng
- Viết đúng lệnh vào /ra dữ liệu
- Biết nhập đúng dữ liệu khi thực hiện chtrình.
- Biết khởi đọng và thoát khỏi hệ soạn thảo Turbo Pascal 7.0
- Soạn được một chtrình vào máy. Dịch được chtrình để phát hiện lỗi cú pháp.
- Thực hiện được chtrình để nhập dữ liệu và thu kết quả, tìm lỗi thuật toán và
sửa lỗi
II. ĐỒ DÙNG DẠY HỌC
1. Giáo viên:
- Sgk, tranh chứa các biểu thức trong toán, Projector, máy vi tính, một số
chtrình viết sẵn.
- Máy vi tính có cài phần mềm Turbo Pascal 7.0, Projector.
2. Học sinh: sgk
III. HOẠT ĐỘNG DẠY HỌC
1. Hoạt động 1: Kiểm tra bài cũ
Hđ của GV Hđ của HS
Cho M, N là 2 biến nguyên. Điều kiện xác
định M, N đồng thời là số chẵn hoặc đồng
thời là số lẻ được thể hiện trong Pascal như
2 Hs lên bảng trả lời bằng cách ghi
bảng
20
TRƯỜNG THPT VAN COC TIN HỌC 11
thế nào?
- Gọi 2 Hs lên bảng độc lập trả lời
- Gọi Hs khác nhận xét (Đúng, Sai)
Nhận xét đánh giá, cho điểm
Đ/a: ((M mod 2 = 0) and (N mod 2 =
0)) Or ((M mod 2 =1) and (N mod 2 =
1))
2. Hoạt động 2:Tìm hiểu thủ tục nhập dữ liệu vào từ bàn phím.
a. Nội dung:
Dùng để đưa nhiều bộ dữ liệu khác nhau cho cùng một chtrình xữ lí.
Cấu trúc: Read/Readln(<biến 1>, <biến 2>, , <biến N>);
b. Các bước tiến hành:
Hđ của GV Hđ của HS Nd ghi bảng
1. Nêu vđ: Khi giải quyết một bài
toán, ta phải đưa dữ liệu vào máy
tính xữ lí, việc đưa dữ liệu bằng
lệnh gán sẽ làm cho chtrình chỉ có
tác dụng với một dữ liệu cố định.
Để chtrình giải quyết được nhiều
bài toán hơn, ta phải sử dụng thủ
tục nhập dữ liệu.
- Y/cầu Hs n/cứu Sgk cho biết cấu
trúc chung của thủ tục nhập dữ liệu
trong NNLT Pascal:
- Ghi bảng
Ví dụ: khi viết chtrình giải ptrình:
Ax
2
+ Bx + C = 0, ta phải nhập vào
các đại lượng nào? viết lệnh nhập?
2. Treo bảng chứa chtrình Pascal
đơn giản có lệnh nhập giá trị cho 3
biến.
- Mô phỏng kết quả chtrình cho hs
quan sát.
Hỏi: Khi nhập giá trị cho nhiều
biến, ta phải thực hiện như thế
nào?
Ví dụ: để nhập các giá trị 2, -1.5, 7
cho các biến A, B, C ta có thể gõ:
Cách1: 2 1.5 7 Enter
Cách2: 2 1.5 Enter
7 Enter
Hỏi: Lệnh Read và Readln khác
nhau như thế nào?
1.
- N/cứu Sgk và trả lời:
Read(<biến1>,
…,<biếnN>);
Readln(<biến1>,
…,<biếnN>);
Suy nghĩ, trả lời:
- phải nhập giá trị vào
3 biến A, B, C
-
Lệnhnhập:Readln(A,
B,C);
2. Quan sát chtrình và
kết quả.
- Các giá trị phải được
cách nhau ít nhất một
dấu cách (Space) hoặc
kí tự xuống dòng
(Enter).
- Quan sát ví dụ của gv
- Suy nghĩ, trả lời
Read: ……
Readln: ……
1. Nhập dữ liệu từ
bản phím
Read(<biến1>,
…,<biếnN>);
Readln(<biến1>,
…,<biếnN>);
Ví dụ
- Các giá trị phải
được cách nhau ít
nhất một dấu cách
hoặc kí tự xuống
dòng.
3. Hoạt động 3:Tìm hiểu thủ tục đưa dữ liệu ra màn hình.
21
TRƯỜNG THPT VAN COC TIN HỌC 11
a. Nội dung:
- Dùng để đưa kết quả sau khi xữ kí ra màn hình để người sử dụng thấy.
- Write/Writeln(<thamsố1>, ,<thamsốN>);
b. Các bước tiến hành:
Hđ của GV Hđ của HS Nd ghi bảng
1. Nêu vđ: Sau khi xữ lí xong,
kết quả CT được lưu trong bộ
nhớ, để nhìn thấy được kết quả
ta phải dùng thủ tục xuất dữ liệu.
- Y/cầu hs n/cứu Sgk cho biết
cấu trúc chung của thủ tục xuất
dữ liệu trong NNLT Pascal
Ví dụ: Khi viết CT giải pt:
ax+b=0, ta phải đưa ra màn hình
gtrị nghiệm
-b/a, ta phải viết lệnh như thế
nào?
2. Để nhập giá trị cho 1 biến từ
bàn phím, ta thường đưa thêm
câu dẫn dắt sau đó mới đến câu
lệnh nhập. Bằng cách dùng cặp
thủ tục write và read.
Ví dụ: Cần nhập 1 số ngdương
N (N<=100) từ bàn phím ta viết
câu lệnh như sau:
Write(‘Nhap so nguyen
duong N<=100: ’);
Readln(N);
3. Treo bảng chứa chtrình Pascal
đơn giản:
Mô phỏng kết quả chtrình để hs
quan sát
Hỏi: chức năng câu lệnh
writeln();
Hỏi: ý nghĩa của :6 trong câu
lệnh write( );
4. Khi các tham số trong lệnh
write() thuộc kiểu Char hoặc
Real thì qui định vị trí như thế
nào?
1.
- N/cứu Sgk và trả lời.
- Writeln(-b/a);
2. Chú ý lắng nghe và
ghi nhớ.
3. Quan sát kết quả
chtrình và trả lời một số
câu hỏi:
Viết ra màn hình dòng
chữ và đưa con trỏ
xuống dòng.
- Dành 6 vị trí trên màn
hình để viết số x, 6 vị trí
tiếp để viết số y, …
2. Đưa dữ liệu ra
màn hình
Write(<thamsố1>,
.,
<tham sốN>);
Writeln(<thamsố1>
, ,
<tham sốN>);
Program vd;
Var x, y, z:integer;
Begin
Writeln(‘Nhap
vao hai so: ’);
Readln(x, y);
Z:= x+y;
Write(x:6, y:6,
z:6);
Readln
End.
- Khi tham số có kiểu
nguyên hoặc kiểu kí
tự việc qui định vị trí
là giống nhau
<tham số>: <độ
22
Nhap vao hai so:
5-6
5 6 11
TRƯỜNG THPT VAN COC TIN HỌC 11
Vd1: với c = ‘E’ và x = 145
Vd2: n = 54 và r = 24.7
5. <<Có thể cho hs tìm hiểu ở
nhà>>
Thủ tục Readln và Writeln
không có tham số có chức năng
là gì?
Vd: Đoạn CT cho kết quả thế
nào?
Writeln(‘DAY THON VI DA’);
Writeln;
Writeln(‘<Han Mac Tu>’:20);
5. N/cứu sgk, suy nghĩ
vatr lời:
- Readln đặt cuối
chtrình để tạm dừng
chtrình cho người
dùng thấy kết quả của
chtrình đưa ra màn
hình.
- Writeln để đưa con
trỏ xuống đầu dòng
dưới.
rộng>
Vd1: write(c:10,
x:6);
- Khi tham số có kiểu
thực phải qui định 2
loại vị trí: vị trí cho
toàn bộ số thực và vị
trí cho phần thập phân
<tham số>: <độ
rộng>: <số chữ số
thập phân>
Vd2: writeln(N:5,
r:8:3);
Write(7983:8:3
)
4. Hoạt động 4: Làm quen với Turbo Pascal 7.0
a. Mục tiêu: Biết được các file Ct cơ bản của TurboPascal 7.0. Biết cách khởi động và
thoát khỏi TP 7.0
b. Các bước tiến hành:
Hđ của GV Hđ của HS Nd ghi bảng
1. ĐVĐ: Để sử dụng được
Pascal trên máy phải có các file
chtrình cần thiết. Y/cầu hs tham
khảo Sgk và cho biết tên các file
đó.
2. Cách khởi động Tpascal:
Bấm vào biểu tượng Turbo
Pascal 7.0 trên màn hình
- Giới thiệu màn hình soạn thảo
CT: bảng chọn, con trỏ, vùng
soạn thảo,
1. Tham khảo sgk và
trả lời
Turbo.exe
Turbo.tpl
Graph.tpu
egavga.bgi
Và các file *.chr
2. Học sinh quan sát và
ghi nhớ
5. Hoạt động 5: Tập soạn thảo chtrình vào dịch lỗi cú pháp
a. Nội dung:
Gõ các lệnh chtrình
Lưu file chtrình lên đĩa: bấm F2
23
E 145
54 24.700
7983.000
DAY THON VI DA
- - - - - - - - <Han Mac Tu>
_
TRƯỜNG THPT VAN COC TIN HỌC 11
Biên dịch lỗi cú pháp: Alt + F9
b. Các bước tiến hành:
Hđ của GV Hđ của HS Nd ghi bảng
1. Soạn một chtrình làm ví dụ,
lưu chtrình, dịch lỗi.
2. Mở chtrình có sẵn, y/cầu hs
chỉ các lỗi cú pháp trong CT,
Biên dịch lỗi và sửa.
Program vd
Var x: integer;
Bigen
Write(‘nhap so
ngduong );Readln(x);
Y:= sqrt(x);
Write(y);
End;
1. Quan sát và ghi nhớ
Program vd;
Var x, y: integer;
Begin
Write(‘nhap so
ngduong ‘);
Readln(x);
Y:= sqrt(x);
Write(y);
End.
- Lưu chtrình vào
đĩa: bấm F2
- Mở chtrình có
trong đĩa: bấm F3
- Biên dịch lỗi cú
pháp: bấm Alt+F9
- Đóng cửa sổ
chtrình: bấm Alt+F3
- Thoát khỏi phầm
mềm: Alt+X
6. Hoạt động 6: (5 phút)Tập thực hiện chtrình và tìm lỗi thuật toán để hiệu chỉnh
a. Mục tiêu: Hs biết cách thực hiện một chtrình, nhập dữ liệu và tìm lỗi thuật toán để
hiệu chỉnh.
b. Nội dung:
- Chạy chtrình: bấm Ctrl+F9
- Xây dựng các bộ test
- Nhập dữ liệu, thu kết quả, đối chứng với kết quả của test.
c. Các bước tiến hành:
Hđ của GV Hđ của HS Nd ghi bảng
1. Thực hiện chtrình ở trên, nhập
dữ liệu, giới thiệu kết quả
Hỏi: Nhóm phím dùng để
thựchiện chtrình?
2. Giới thiệu chtrình giải pt:
ax+b=0
Var a, b:real;
Begin
Readln(a, b);
If a<>0 then write(-b/a)
else write(‘PTVN’);
Readln
End.
Hãy tìm test để chứng minh
chtrình này Sai.
1. Quan sát gv thực
hiện và tham khảo sgk
Ctrl+F9
2. Đọc chtrình và độc
lập suy nghĩ để tìm test
và trả lời:
a=0, b=0 pt vô số
nghiệm
- Chạy chtrình: bấm
Ctrl+F9
IV. ĐÁNH GIÁ CUỐI BÀI
1. Nội dung đã học
2. Câu hỏi, bài tập về nhà
- So sánh sự giống nhau và khác nhau của các cặp lệnh write()/writeln() và
read()/readln().
24
TRƯỜNG THPT VAN COC TIN HỌC 11
- Viết chtrình nhập vào một số và tính bình phương của số đó.
- Viết chtrình nhập độ dài bán kính và tính chu vi, diện tích hình tròn tương
ứng.
- Làm bài tập 9, 10 sgk trang36
- Xem trước nội dung phần bài tập và thực hành số 1 sgk trang 34
* Xem phụ lục B sgk: Trang 122: Môi trường Turbo Pascal
Trang 136: Một số thông báo lỗi
Ngày soạn:
Ngày dạy:
Tiết 8 - 9 BÀI TẬP THỰC HÀNH SỐ 1
I. MỤC TIÊU
1. Kiến thức
- Biết được một chtrình Pascal hoàn chỉnh.
- Làm quen các dịch vụ chủ yếu của Turbo Pascal trong việc soạn thảo, lưu,
dịch, thực hiện chtrình.
2. Kĩ năng
- Soạn thảo được chtrình, lưu lên đĩa, dịch lỗi cú pháp, thực hiện và tìm lỗi
thuật toán và hiệu chỉnh.
- Bước dầu biết phântích và hoàn thành chtrình đơn giản trên Pascal
3. Thái độ: Tự giác, tích cực và chủ động trong thực hành
II. ĐỒ DÙNG DẠY HỌC
1. Giáo viên: Phong máy vi tính được cài đầy đủ Turbo Pascal, projector để hướng
dẫn
2. Học sinh: Sgk, sách bài tập và bài tập đã viết ở nhà
III. HOẠT ĐỘNG DẠY HỌC
1. Hoạt động 1: Kiểm tra bài cũ
Hđ của GV Hđ của HS
Viết chtrình nhập vào một số và tính bình
phương của số đó.
Cho 2 hs xung phong lên bảng
Nhận xét, đánh giá, cho điểm
Chtrình đạt yêu cầu:
Var x, y: integer;
Begin
Write(‘nhap vao một so ’); readln(x);
Y:= sqr(y);
Write(y); readln
End.
2. Hoạt động 2: Tìm hiểu một chtrình hoàn chỉnh
a. Nội dung: Cho chương trình sau:
Program Giai_pt;
Uses crt;
Var a, b, c, d, x1, x2: real;
Begin
Clrscr;
25