Tải bản đầy đủ (.doc) (68 trang)

Giáo án tin hoc 11 ( tết 1-26)

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 (667.02 KB, 68 trang )

Tr ng THPT TH i Bìnhườ ớ TH 11

Ngày soạn: 07/8//08
Tiết 01
§1. KHÁI NIỆM LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH
§2 CÁC THÀNH PHẦN CỦA NGÔN NGỮ LẬP TRÌNH (Mục 1)
I. Mục đích, yêu cầu
Hiểu được khả năng của ngôn ngữ lập trình bậc cao, phân biệt được với ngôn ngữ máy và hợp ngữ.
Hiểu ý nghĩa và nhiệm vụ của chương trì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ôn ngữ 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
Hoạt động của GV Hoạt động của HS Nội dung 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: chương
trì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
chương trì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.
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
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
chương trình giải được
bài toán trên MT.
GV: Tr n V n Chínhầ ă
Trang 1
CHƯƠNG I: MỘT SỐ KHÁI NIỆM VỀ LẬP
TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH
Tr ng THPT TH i Bìnhườ ớ TH 11

- 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: Chương trình viết bằng ng
2
máy
sẽ thực hiện được ngay, còn chương trình
viết bằng ng
2
bậc cao thì phải chuyển đổi
thành chương trình trên ng
2
máy mới có
thể thực hiện được. Công cụ thực hiện
chuyển đổi đó gọi là chương trình dịch.
H: Input, Output của chương trì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
chương trì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
chép
Tl: In: chương trình viết
bằng ng
2
bậc cao
Out: chương trình trên
ng
2
máy.
Tl: (2-3Hs) phát hiện lỗi
cú pháp của chương trì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
2. Chương trì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ộ
chương trì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 chương trình
- Ngữ nghĩa
GV: Tr n V n Chínhầ ă
Trang 2
Tr ng THPT TH i Bìnhườ ớ TH 11


+ 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.
H: Lỗi ngữ nghĩa thường được phát
hiện khi nào?
begin
if a>b then s=a+b
end
Else s =1;
(* a<b thì s =? *)
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ử chương trình.
III. 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 chương trì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
IV. 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
V. Rút kinh nghiệm
………………………………………………………………………………………………………
………………………………………………………………………………………………………
………………………………………………………………………………………………………
………………………………………………………………………………………………………
………………………………………………………………………………………………………
GV: Tr n V n Chínhầ ă
Trang 3
Tr ng THPT TH i Bìnhườ ớ TH 11

Ngày soạn: 13/8/08
Tiết 02
§2. CÁC THÀNH PHẦN CỦA NGÔN NGỮ LẬP TRÌNH (Mục 2)

I. Mục đích, yêu cầ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ũ
Hoạt động của GV Hoạt động của HS
H1: Hãy phân biệt chương trì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 bằng gì?
Nhận xét, đánh giá cho điểm 3 Hs
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
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 chương trình đếu phải được đặt tên theo một qui tắc của NNLT và
từng chương trì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:
Hoạt động của GV Hoạt động của HS Nội dung ghi bảng
ĐVĐ: Mọi đối tượng trong chương
trình đếu phải được đặt tên
1. N/cứu Sgk nêu qui tắc đặt tên trong
Turbo Pascal?
1. N/cứu sgk và trả lời:
+ Gồm chữ cái, chữ số, dấu
1. Khái niệm Tên
(Sgk)
GV: Tr n V n Chínhầ ă
Trang 4
Tr ng THPT TH i Bìnhườ ớ TH 11

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 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
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, 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
Ví dụ:
+ Tên dành riêng
+ Tên chuẩn
+ Tên do người dùng đặt
Ví dụ:
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 chương trì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 chương trình, biến dùng trong chương trình đều phải được khai báo.
* Chú thích : giải thích cho chương trì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:
Hoạt động của GV Hoạt động của HS Nội dung ghi bảng
1. Y/cầu Hs cho 1 số ví dụ về hằng số,
hằng xâu, hằng logic
1. Suy nghĩ và trả lời
+ Hằng số: 55 73.05
+ Hằng xâu: ‘211’ ‘AB’

2. Hằng và biến
a. Hằng
+ Hằng số
GV: Tr n V n Chínhầ ă
Trang 5
Tr ng THPT TH i Bìnhườ ớ TH 11

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 chương
trình.
Cho 1 số ví dụ khác về chú thích
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?
+ 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 giữa
cặp dấu { } và (* *) dùng
để giải thích chương trì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.
+ 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}
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 chương trình Sgk
Xem Nội dung phụ lục B, trang 128 Sgk: Một số tên dành riêng

V. Rút kinh nghiệm
………………………………………………………………………………………………………
………………………………………………………………………………………………………
………………………………………………………………………………………………………
………………………………………………………………………………………………………
………………………………………………………………………………………………………
GV: Tr n V n Chínhầ ă
Trang 6
Tr ng THPT TH i Bìnhườ ớ TH 11

Ngày soạn: 15/8/08
Tiết 03
BÀI TẬP
I. Mục đích, yêu cầ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ũ
Hoạt động của GV Hoạt động 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:
Hoạt động của GV Hoạt động của HS Nội dung 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ổ
- Đọ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.
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
GV: Tr n V n Chínhầ ă
Trang 7
Tr ng THPT TH i Bìnhườ ớ TH 11

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.
- Suy nghĩ, trả lời câu
hỏi.
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:
Hoạt động của GV Hoạt động của HS Nội dung 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ụ
- 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 ý.
Suy nghĩ, trả lời, giải
thích
Trả lời
Lên bảng
Chú ý, ghi nhớ
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,
begin, end.
Tên chuẩn: trong Pascal abs,
integer.
4. Hoạt động 4:
Hoạt động của GV Hoạt động của HS Nội dung 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à
GV: Tr n V n Chínhầ ă
Trang 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 TH i Bìnhườ ớ TH 11

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.
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?
STT Tên biến Đúng(Đ)/Sai(S)
1 1hoten
2 Hoten
3 Ho ten
4 Ho_ten
5 Ho-ten1
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.
GV: Tr n V n Chínhầ ă
Trang 9
Tr ng THPT TH i Bìnhườ ớ TH 11

Ngày soạn: 22/8/08
Tiết 04
§3. CẤU TRÚC CHƯƠNG TRÌNH
I. Mục đích, yêu cầu
1. Kiến thức
Hiểu chương trì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 chương trì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 chương trì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ố chương trình mẫu viết sẵn.

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ũ
Hoạt động của GV Hoạt động 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: Tìm hiểu cấu trúc chung của chương trình
a. Mục tiêu: Hs biết được chương trình có 2 phần.
b. Nội dung : Cấu trúc chương trình có 2 phần: phần khai báo, phần thân.
c. Các bước tiến hành:
Hoạt động của GV Hoạt động của HS Nội dung 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 chương trình có cấu trúc mấy
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>]
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 chương trình>
GV: Tr n V n Chínhầ ă
Trang 10


CHƯƠNG II: CHƯƠNG TRÌNH ĐƠN GIẢN
Tr ng THPT TH i Bìnhườ ớ TH 11

3. Chiếu lên bảng chương trình:
Program vidu;
Begin
Write(‘chao cac ban’);
Readln
End.
H: Đâu là phần khai báo và phần
thân chương trình?
Dẫn dắt chuyển sang Hoạt động 3:
Chương trình trên chỉ là chương
trình đơn giản. Để có thể nhận biết
các thành phần trong chương trình
bất kỳ, ta cần tìm hiểu Nội dung của

từng thành phần.
<phần thân chương trình>
3. Quan sát và trả lời
- Phần In đậm là phần thân.
Còn lại là phần khai báo.
3. Hoạt động 3: Tìm hiểu các thành phần của chương trình.
a. Mục tiêu: Hs biết được Nội dung của các thành phần trong chương trình
b. Nội dung :
- Phần khai báo: khai báo tên chương trình, khai báo các thư viện, khai báo hằng, khai báo biến,
khai báo chương trình con, ...
- Phần thân: bao gồm dãy lệnHoạt độngượ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:
Hoạt động của GV Hoạt động của HS Nội dung 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 chương trì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 chương trình.
1. N/cứu sgk, thảo luận và trả
lời:
- Khai báo tên chương trì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 chương trì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
2. Các thành phần của
chương trình
a. Phần khai báo
Program tên_chương trì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
GV: Tr n V n Chínhầ ă
Trang 11
Tr ng THPT TH i Bìnhườ ớ TH 11

Dãy các câu lệnh;
End.
GV: Tr n V n Chínhầ ă
Trang 12
Tr ng THPT TH i Bìnhườ ớ TH 11

4. Hoạt động 4: Xét một vài ví dụ về những chương trình đơn giản
a. Mục tiêu: Hs nhận biết được từng phần của một chương trình đơn giản.
b. Nội dung : Một vài chương trình đơn giản.
c. Các bước tiến hành:
Hoạt động của GV Hoạt động của HS Nội dung ghi bảng
1. Chiếu lên bảng một chương trình
đơn giản.
Program vidu;
Uses crt;
Var x, y: byte; z:word;
Begin
z:= x+y;
writeln(z);
readln;
End.
H1: Phần khai báo của chương
trình?
H2: Phần thân của chương trì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
chương trình trên, nhưng kết quả
chương trì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ề chương
trình Pascal chỉ có phần thân.
+ 2 nhóm còn lại chương trì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.
1. Quan sát và trả lời
- 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 chương trì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)
V. Rút kinh nghiệm
………………………………………………………………………………………………………
………………………………………………………………………………………………………
………………………………………………………………………………………………………
GV: Tr n V n Chínhầ ă
Trang 13
Tr ng THPT TH i Bìnhườ ớ TH 11

………………………………………………………………………………………………………
GV: Tr n V n Chínhầ ă
Trang 14
Tr ng THPT TH i Bìnhườ ớ TH 11

Ngày soạn: 28/8/08
Tiết 05
§4,5. MỘT SỐ KIỂU DỮ LIỆU CHUẨN VÀ
KHAI BÁO BIẾN
I. Mục đích, yêu cầ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.
- 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ũ
Hoạt động của GV Hoạt động 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 đề
Hoạt động của GV Hoạt động của HS Nội dung 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:
Hoạt động của GV Hoạt động của HS Nội dung 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ó
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.
1. Kiểu dữ liệu chuẩn
GV: Tr n V n Chínhầ ă
Trang 15
Tr ng THPT TH i Bìnhườ ớ TH 11

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ó 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?
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, 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 chương trì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:
Hoạt động của GV Hoạt động của HS Nội dung 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 ?
1. Đọc sách.
Mọi biến dùng trong
chương trì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ộ
2. Khai báo biến
GV: Tr n V n Chínhầ ă
Trang 16
Tr ng THPT TH i Bìnhườ ớ TH 11

Cấu trúc chung của khai báo biến
bằng Pascal:
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?

nhớ nơi lưu giữ giá trị của
biến.
Var <danh sách biến>:
<kiểu dữ liệ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
V. Rút kinh nghiệm
………………………………………………………………………………………………………
………………………………………………………………………………………………………
………………………………………………………………………………………………………
………………………………………………………………………………………………………
………………………………………………………………………………………………………
GV: Tr n V n Chínhầ ă
Trang 17
Tr ng THPT TH i Bìnhườ ớ TH 11

Ngày soạn: 04/09/08
Tiết 06
§6. PHÉP TOÁN, BIỂU THỨC, CÂU LỆNH GÁN
I. Mục đích, yêu cầ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
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ũ
Hoạt động của GV Hoạt động 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:
Hoạt động của GV Hoạt động của HS Nội dung 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?
1.Chú ý lắng nghe
2. Suy nghĩ và trả lời
- Phép: cộng, trừ, nhân,
GV: Tr n V n Chínhầ ă
Trang 18
Tr ng THPT TH i Bìnhườ ớ TH 11

- 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?
H3: Kết quả của phép toán quan hệ
thuộc kiểu dữ liệu nào?
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
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:
Hoạt động của GV Hoạt động của HS Nội dung 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
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)

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
GV: Tr n V n Chínhầ ă
Trang 19
Tr ng THPT TH i Bìnhườ ớ TH 11

- 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 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?
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
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)
3. Hàm số học chuẩn
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
GV: Tr n V n Chínhầ ă
Trang 20
Tr ng THPT TH i Bìnhườ ớ TH 11

- 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
+ 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
and
B
A
or B
Not
A
0 0 0 0 1
0 1 0 1 1
1 0 0 1 0
1 1 1 1 0
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)
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:
Hoạt động của GV Hoạt động của HS Nội dung 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 chương trình:
Var x, y: integer;
T:boolean;
Begin
x:=3; y:=9;
x:=x-1; y:=y div 2;
Write(‘x=’,x); writeln(‘ y=’,y);
T:= x<y; write(T);
- 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:
x=2 y=4
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;
GV: Tr n V n Chínhầ ă
Trang 21
Tr ng THPT TH i Bìnhườ ớ TH 11

readln
End.
Ch/trình in ra màn hình gtrị bao
nhiêu?
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.
V. Rút kinh nghiệm
………………………………………………………………………………………………………
………………………………………………………………………………………………………
………………………………………………………………………………………………………
………………………………………………………………………………………………………
………………………………………………………………………………………………………
GV: Tr n V n Chínhầ ă
Trang 22
Tr ng THPT TH i Bìnhườ ớ TH 11

Ngày soạn: 10/09/08
Tiết 7
§7,8. 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 đích, yêu cầ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 chương trì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 chương trì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 chương trình vào máy. Dịch được chương trình để phát hiện lỗi cú pháp.
- Thực hiện được chương trì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ố chương trì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ũ
Hoạt động của GV Hoạt động 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ư 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
2 Hs lên bảng trả lời bằng cách ghi bảng
Đ/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 chương trì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:
Hoạt động của GV Hoạt động của HS Nội dung 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 chương trình chỉ có tác
dụng với một dữ liệu cố định. Để
chương trì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.
1.
- N/cứu Sgk và trả lời:
1. Nhập dữ liệu từ bản phím
Read(<biến1>,…,<biếnN>);
GV: Tr n V n Chínhầ ă
Trang 23
Tr ng THPT TH i Bìnhườ ớ TH 11

- 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 chương trì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 chương trình Pascal
đơn giản có lệnh nhập giá trị cho 3
biến.
- Mô phỏng kết quả chương trì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?
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 chương trì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: ……

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.
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:
Hoạt động của GV Hoạt động của HS Nội dung 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
1.
- N/cứu Sgk và trả lời.
- Writeln(-b/a);

2. Chú ý lắng nghe và ghi
nhớ.
2. Đưa dữ liệu ra màn hình
Write(<thamsố1>,...,
<tham sốN>);
Writeln(<thamsố1>,...,
<tham sốN>);
GV: Tr n V n Chínhầ ă
Trang 24
Tr ng THPT TH i Bìnhườ ớ TH 11

(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 chương trình Pascal
đơn giản:
Mô phỏng kết quả chương trì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?
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);
3. Quan sát kết quả chương
trì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, …
5. N/cứu sgk, suy nghĩ vatr
lời:
- Readln đặt cuối chương
trình để tạm dừng chương
trình cho người dùng thấy kết
quả của chương trình đưa ra
màn hình.
- Writeln để đưa con trỏ xuống
đầu dòng dưới.
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ố>: <độ 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
GV: Tr n V n Chínhầ ă
Trang 25
Nhap vao hai so:
5-6
-----5-----6----11
---------E---145
---54--24.700
7983.000
DAY THON VI DA
--------------------------------
- - - - - - - - <Han Mac Tu>
_

×