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

Giáo án tin học 11

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 (583.34 KB, 62 trang )


Giáo án tin học11
CHƯƠNG I: MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH
VÀ NGÔN NGỮ LẬP TRÌNH
Ngày soạn: 21/8/2007
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
T/g Hđ của GV Hđ của HS Nd ghi bảng
2’ Đ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ể 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
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
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
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.
2. Chtrình dịch
a. K/niệm: Sgk
Giáo viên: Bùi Văn Tú
1

Giáo án tin học11
Đ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.
H: Lỗi ngữ nghĩa thường được phát hiện

khi nào?
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 =? *)
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.
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
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
Giáo viên: Bùi Văn Tú
2

Giáo án tin học11
Ngày soạn: 24/8/2007
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: (7 phút) 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 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: (18 phút) 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
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ử
1. Khái niệm Tên
(Sgk)
Ví dụ:
+ Tên dành riêng
+ Tên chuẩn
Giáo viên: Bùi Văn Tú
3

Giáo án tin học11
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
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
+ Tên do người dùng đặt
Ví dụ:
3. Hoạt động 3: (15 phút) 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
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?
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 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.
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}
IV. ĐÁNH GIÁ CUỐI BÀI
Giáo viên: Bùi Văn Tú
4

Giáo án tin học11
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: 27/8/2007
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: (5 phút) Kiểm tra bài cũ
T/g 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:
T/g 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ử
Giáo viên: Bùi Văn Tú
5

Giáo án tin học11
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:
T/g 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ụ
- 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:
T/g 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 (5phút)
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.
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?
Giáo viên: Bùi Văn Tú
6
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

Giáo án tin học11
STT 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.
CHƯƠNG II: CHƯƠNG TRÌNH ĐƠN GIẢN
Ngày soạn: 29/8/2007
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
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
Giáo viên: Bùi Văn Tú
7

Giáo án tin học11
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:
Program vidu;
Begin
Write(‘ chao cac ban’);
Readl n;
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, ...

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
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;
Giáo viên: Bùi Văn Tú
8

Giáo án tin học11
Begin
Dãy các câu lệnh;
End.
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.

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 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.
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 (5phút)
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: 31/8/2007
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.
Giáo viên: Bùi Văn Tú
9

Giáo án tin học11
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: (7 phút) 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: (3 phút)Đặ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: (20 phút)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ó 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ữ

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, 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ớ.
1. Kiểu dữ liệu chuẩn
Sgk
Sgk
Giáo viên: Bùi Văn Tú
10


Giáo án tin học11
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?
4. Suy nghĩ và trả lời
Kiểu thực (Real)
- 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: (10 phút) 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:
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?
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>;
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
2. Khai báo biến
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 (5 phút)
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
Giáo viên: Bùi Văn Tú
11

Giáo án tin học11
Ngày soạn: 1/9/2007
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
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: (5 phút) 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: (10 phút)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?
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
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
Giáo viên: Bùi Văn Tú
12


Giáo án tin học11
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?
Tl: kiểu nguyên.
Tl: kiểu logic
3. Hoạt động 3: (20phút) 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 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
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
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)) /
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
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).

Giáo viên: Bùi Văn Tú
13

Giáo án tin học11
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
(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
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
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)
4. Hoạt động 4: (8 phút) 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
- 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.
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;
Giáo viên: Bùi Văn Tú
14

Giáo án tin học11
+ 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;
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?
Quan sát, làm thử ch/trình qua
các lệnh và trả lời:
x=2 y=4
TRUE
IV. ĐÁNH GIÁ CUỐI BÀI (2phút)
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: 10/9/07
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: (5 phút) 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ư thế nào?
2 Hs lên bảng trả lời bằng cách ghi bảng
Giáo viên: Bùi Văn Tú
15

Giáo án tin học11
- 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: (10 phút)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:(15 phút)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:
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
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>);
Giáo viên: Bùi Văn Tú
16

Giáo án tin học11
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?
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ả 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, …
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.
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: (3 phút)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 1. Tham khảo sgk và trả lời
Giáo viên: Bùi Văn Tú
17
Nhap vao hai so:
5-6
-----5-----6----11
---------E---145
---54--24.700
7983.000
DAY THON VI DA
--------------------------------

- - - - - - - - <Han Mac Tu>
_

Giáo án tin học11
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, ...
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: (5 phút)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
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 (2phút)
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().
- 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
Giáo viên: Bùi Văn Tú
18


Giáo án tin học11
* 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: 18/9/07
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: (8 phút) 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: (30phút)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;
Write(’nhap a b c ’); Readln(a, b, c);
D:= b*b-4*a*c;
X1:= (-b-sqrt(d))/(2*a);
X2:= (-b+sqrt(d))/(2*a);
Writeln(’x1=’,x1:6:2,’ x2=’,x2:6:2);
Readln
End.
b. Các bước tiến hành:
Hđ của GV Hđ của HS Nd ghi bảng
1. Chiếu chtrình lên bảng. Y/cầu hs thực hiện
các nhiệm vụ:
- Soạn chtrình vào máy
- Lưu chtrình
- Dịch lỗi cú pháp
- Thực hiện chtrình
- Nhập dữ liệu 1 -3 2. Thông báo kết quả
- Trở về màn hình soạn thảo
- Thực hiện chtrình
- Nhập dữ liệu 1 0 2. Thông báo kết quả.
1. Quan sát chtrình, đọc lập
soạn vào máy
F2

Alt+F9
Ctrl+F9
x1=1.00 x2=2.00
Enter
Ctrl+F9
Program Giai_pt;
Uses crt;
Var a, b, c, d, x1, x2: real;
Begin
Clrscr;
Write(’nhap a b c ’);
Readln(a, b, c);
D:= b*b-4*a*c;
X1:= (-b-sqrt(d))/(2*a);
X2:= (-b+sqrt(d))/(2*a);
Giáo viên: Bùi Văn Tú
19

Giáo án tin học11
- Vì sao có lỗi xuất hiện? Thông báo lỗi
Do căn bậc hai của một số
âm
Writeln(’x1=’,x1:6:2,’ x2=’,
x2:6:2);
Readln
End.
3. Hoạt động 3: (45 phút)Rèn luyện kĩ năng lập chương trình.
a. Mục tiêu: Hs soạn, lưu, dịch và thực hiện được chương trình
b. Nội dung: Viết chương trình nhập từ bàn phím 2 số thực a và b, tính và đưa ra màn hình trung bình cộng các bình
phương của hai số đó.

c. Các bước tiến hành:
Hđ của GV Hđ của HS Nd ghi bảng
1. Định hướng để hs phân tích bài toán
- Dữ liệu vào:
- Dữ liệu ra:
- Cách tính:
2. Y/cầu hs tự sọan chtrình và lưu lên máy.
Quan sát hướng dẫn từng nhóm hs trong lúc
thực hành
3. Y/cầu hs nhập dữ liệu và thông báo kết quả
- Với a=5, b=7
- Với a=7, b=-5
1. Phân tích theo yêu cầu của gv
- Dữ liệu vào: a b
- Dữ liệu ra: tb
- tb =(a
2
+b
2
)/2
2. Thực hiện các y/cầu của gv
- Soạn chtrình
- F2, gõ tên file để lưu
- Alt+F9 : biên dịch lỗi
- Ctrl+F9: t/hiện chtrình
3.Nhập dữ liệu theo y/cầu.
- Với a=5, b=7 thì tb=37
- Với a=7, b=-5thì tb=37
Bài toán: Viết chương trình
nhập từ bàn phím 2 số thực a

và b, tính và đưa ra màn hình
trung bình cộng các bình
phương của hai số đó.
IV. ĐÁNH GIÁ CUỐI BÀI (7phút)
1. Nội dung đã học
Các bước để hoàn thành một chương trình:
- Phân tích bài toán để xácđịnh dữ liệu vào/ra
- Xác định thuật toán
- Soạn thảo chtrình vào máy
- Lưu trữ chtrình
- Biên dịch chtrình
- Thực hiện và hiệu chỉnh chtrình
2. Câu hỏi, bài tập về nhà
- Viết chương trình nhập vào độ dài 3 cạnh của một tam giác, tính chu vi, diện tích của tam giác đó.
- Làm bài tập 7, 8, 9, 10 sgk trang 36
+ Soạn chương trình
+ Dịch lỗi và thực hiện
+ Nhập dữ liệu và kiểm tra kết quả
- Xem trước bài: Cấu trúc rẽ nhánh, sgk trang38
Ngày soạn: 19/09/07
Tiết 10 BÀI TẬP ÔN CHƯƠNG II
I. MỤC TIÊU
1. Kiến thức: Biết phânbiệt các loại biểu thức trong NNLT
2. Kĩ năng: 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: bài giải các bài tập sgk
2. Học sinh: sgk
III. HOẠT ĐỘNG DẠY HỌC
Giáo viên: Bùi Văn Tú
20


Giáo án tin học11
1. Hoạt động 1: (15 phút) Kiểm tra 15 phút
Hđ của GV Hđ của HS
Phát đề cho hs
Thu bài làm của hs
Nhận đề và làm bài
Nộp bài làm
2. Hoạt động 2: (10 phút) Bài tập 8/sgk/36
a. Mục tiêu: Xây dựng được biểu thức logic làm điều kiện để giải một số bài toán đơn giản
b. Nội dung: Viết biểu thức lôgic cho kết quả True khi tọa độ (x, y) là điểm nằm trong vùng gạch chéo kể cả biên
của hình 2.a và 2.b (trang 36/sgk)
c. Các bước tiến hành:
Hđ của GV Hđ của HS Nd ghi bảng
1. Hình 2.a:
Y/cầu hs quan sát hình và trả lời các câu hỏi:
- Giá trị của y trong vùng gạch chéo?
- Giá trị của x trong vùng gạch chéo?
- Điểm A(x,y) thì x, y có quan hệ thế nào?
- Y/cầu hs từ các biểu thức quan hệ viết ra
bthức lôgic theo yêu cầu của đề?
- Phân tích các giá trị x, y để đơn giản biểu
thức
(y<=1) and (abs(x)<=y)
2. Hình 2.b
Y/cầu hs tự làm, tương tự hình 2.a
Quan sát hình và trả lời
0<=y<=1
-1<=x<=1
|x|<=y

(|x|<=y) and ((x>=-1)and
(x<=1)) and ((y>=0) andy<=1)
Chú ý lắng nghe, để ý cách xác
định giá trị đúng.
Tự làm
3. Hoạt động 3: (15 phút)Bài 9/sgk/36
a. Mục tiêu: Củng cố lại các bước khi xây dựng chương trình, sử dụng các dạng câu lệnh vào ra đã học.
b. Nội dung:Bài 9/sgk/36
c. Các bước tiến hành:
Hđ của GV Hđ của HS Nd ghi bảng
- Y/cầu hs đọc đề
Định hướng để hs phân tích bài toán
- Dữ liệu vào:
- Dữ liệu ra:
- Cách tính:
Y/cầu hs tự viết chương trình
- Chỉ định 1 hs lên bảng trình bày
- Y/cầu hs khác nhận xét bài làm trên bảng
(lỗi cú pháp, thuật toán,…)
- Treo bảng có sẵn chtrình đúng để hs so
sánh.
(Pi là hằng có sẵn trong Pascal có giá trị
3.1415926536)
Chạy thử chtrình
Nếu a=2 thì kquả: 6.2832
- Đọc đề
- Dữ liệu vào: a =R
- Dữ liệu ra: dtích phần gạch
chéo (1/2 dtích hình tròn)
- Cách tính: a*a*pi/2

Hs độc lập viết chương trình
- 1 hs lên bảng
- Nhận xét
So sánh, nhận xét
Program dt;
Var a: real;
Begin
Write(‘nhap gia tri a (a>0) ‘);
readln(a);
Writeln(‘Dien tich can tim la: ‘,
a*a*pi/2 :20:3);
Readln;
End.
IV. ĐÁNH GIÁ CUỐI BÀI (5phút)
1. Nội dung đã học
2. Câu hỏi, bài tập về nhà
Xem trước bài: Cấu trúc rẽ nhánh, sgk trang 38
Giáo viên: Bùi Văn Tú
21

Giáo án tin học11

Giáo viên: Bùi Văn Tú
22

Giáo án tin học11
CHƯƠNG III: CẤU TRÚC RẼ NHÁNH VÀ LẶP
Ngày soạn: 30/9/07
Tiết 11 CẤU TRÚC RẼ NHÁNH
I. MỤC TIÊU

1. Kiến thức
- Hiểu nhu cầu của cáu trúc rẽ nhánh trong biểu diễn thuật toán.
- Học sinh nắm vững ý nghĩa và cú pháp của câu lệnh rẽ nhánh dạng khuyết và dạng đủ, hiểu được cách sử
dụng câu lệnh ghép.
2. Kĩ năng
- Sử dụng cấu trúc rẽ nhánh trong mô tả thuật toán của một số bài toán đơn giản.
- Viết được các lệnh rẽ nhánh khuyết, rẽ nhánh đầy đủ và áp dụng được để thể hiện thuật toán của một số
bài toán đơn giản
II. ĐỒ DÙNG DẠY HỌC
1. Giáo viên: + Soạn giáo án.
+ Chuẩn bị bảng phụ sau:
2. Học sinh: sọan bài ở nhà.
III. PHƯƠNG PHÁP: Giảng giải + hoạt động của học sinh.
IV. 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
Cho 2 số nguyên a, b; tìm Max(a,b).
Yêu cầu: viết phần tên, phần khai báo, và câu lệnh nhập
a, b bằng Pascal. Nêu thuật toán tìm Max(a,b).
Gọi 2 hs lên bảng
Nhận xét, đánh giá, cho điểm
Đ/án:
Program baitap;
Var a, b, max : integer;
Begin
readln(a,b);
end.
2 hs lên bảng trả lời độc lập.
Hs khác nhận xét
2. Hoạt động 2: (5 phút) Tìm hiểu cấu trúc rẽ nhánh thiếu và đủ

Hoạt động của GV Hoạt động của HS Nội dung
- Với bài toán trên làm thế nào để tìm Max(a,
b)?
- Hãy mô tả thuật toán bằng NNLT Pascal?
- Hãy cho biết câu: Nếu …thì … là loại câu
gì?
- So sánh:
+ Nếu a>b thì max = a.
+ Nếu a<b thì max = b.
- Chưa làm được
- Câu điều kiện.
1. Rẽ nhánh:
* Một số mệnh đề có dạng
điều kiện:
+ Dạng thiếu: Nếu…thì…
+ Dạng đủ: Nếu … thì …
nếu không thì …
Giáo viên: Bùi Văn Tú
23
Câu lệnh
IF
Đ_kiện
Đ
S
Câu lệnh 1
IF
Điều kiện
ĐS
Câu lệnh 2


Giáo án tin học11
Còn dạng nào khác không?
- Hãy cho ví dụ về các loại câu điều kiện
* Chọn hai câu làm ví dụ. Từ đó phân tích
cho học sinh thấy cấu trúc rẽ nhánh thể hiện
trong ví dụ này.
- Có, Nếu …thì … nếu không
thì …
- Nếu có học bài thì đạt điểm 10.
- Nếu là người lớn thì 5000đ nếu
trẻ em thì 1000đ.
* Cấu trúc dùng để mô tả các
mệnh đề như trên được gọi là
cấu trúc rẽ nhánh thiếu và đủ.
* Mọi ngôn ngữ lập trình đều
có các câu lệnh để mô tả cấu
trúc rẽ nhánh.
3. Hoạt động 3: (12 phút)Câu lệnh If …then
Hđ của GV Hđ của HS Nd ghi bảng
1. Y/cầu hs n/cứu sgk và dựa vào các ví dụ
cấu trúc rẽ nhánh để đưa ra cấu trúc chung
của câu lệnh rẽ nhánh.
2. Khi không đề cập đến việc gì xãy ra nếu
điều kiện không thõa mãn cấu trúc câu lậnh
rẽ nhánh như thế nào?
3.Gọi học sinh viết câu lệnh so sánh để tìm
Max(a, b) bằng 2 cách.
- Có thể chỉ dùng 1 câu lệnh khuyết?
max:=a; if a < b then max:=b;
Lưu ý: Trước từ khoá Else không có dấu ;

- Dạng nào thuận tiện hơn?
1. N/cứu sgk và trả lời
If<điều_kiện>Then<lệnh1>
Else<lệnh2>;
2. Chú ý lắng nghe và trả lời.
Câu lệnh khuyết:
If <điều_kiện> Then<lệnh>;
3. Lên bảng
If a > b then max:= a;
If a < b then max:= b;
Hoặc:
If a > b then max:=a
Else max:=b;
Suy nghĩ và trả lời.
-> tuỳ trường hợp cụ thể.
2. Câu lệnh IF – THEN:
* Để mô tả cấu trúc rẽ nhánh,
Pascal dùng câu lệnh:
a. Dạng đủ:
IF <điều kiện> THEN <câu
lệnh 1> ELSE < câu lệnh
2>;
b. Dạng khuyết: (dạng
đặc biệt)
IF <điều kiện> THEN <câu
lệnh>;
4. Hoạt động 4: (3 phút) Câu lệnh ghép
Hđ của GV Hđ của HS Nd ghi bảng
1. Nêu vđ: Sau then, sau else phải có một câu
lệnh. Nhưng thực tế trong các trường hợp

phức tạp đòi hỏi phải là nhiều câu lệnh.
NNLT cho phép gộp dãy các lệnh thành một
câu lệnh ghép
2. Y/cầu hs n/cứu sgk cho biết cấu trúc câu
lệnh ghép trong Pascal
1. Chú ý lắng nghe
2. N/cứu sgk và trả lời
Begin
<các lệnh cần ghép>;
End;
Câu lệnh ghép trong Pascal:
Begin
<các lệnh cần ghép>;
End;
5. Hoạt động 5: (18 phút)Rèn luyện kĩ năng vận dụng lệnh If
a. Nội dung:
Vd1: Viết chương trình nhập vào độ dài 2 cạnh của một hình chữ nhật, tính chu vi, diện tích của hcn đó.
Vd2: Tìm nghiệm của pt bậc hai: ax
2
+bx+c=0
b. Cách tiến hành
Hđ của GV Hđ của HS Nd ghi bảng
1. Nêu nội dung, mục đích yêu cầu của vd1
Chtrình này các em đã viết, hãy cho biếtcó
hạn chế nào trong chtrình của em không?
- Hãy nêu ra hướng giải quyết của các em .
- Y/cầu hs về nhà hoàn thiện chtrình.
2. Nêu nội dung, mục đích yêu cầu của bài
tập vd2.
- Hãy nêu các bước chính để trả lời nghiệm

pt bậc hai?
1. Chú ý dẫn dắt của gv
Khi nhập độ dài âm thì cho ra
dtích, chu vi âm. Điều này
không có trong thực tế
- Dùng câu lệnh rẽ nhánh để
kiểm tra giá trị độ dài các cạnh.
Nếu độ dài dương thì tính dtích
và chu vi, ngược lại thì thông
báo độ dài Sai.
2. Ghi đề bài, chú ý mục đích,
y/cầu của bài tập .
Vd1: Viết chương trình nhập
vào độ dài 2 cạnh của một
hình chữ nhật, tính chu vi,
diện tích của hcn đó.
Vd2: Tìm nghiệm của pt bậc
hai: ax
2
+bx+c=0
Giáo viên: Bùi Văn Tú
24

Giáo án tin học11
- Ta cần bao nhiêu lệnh rẽ nhánh để mô tả
các bước trên?
- Y/cầu hs viết chtrình hoàn thiện (1hs trình
bày trên bảng)
Gọi hs khác nhận xét, đánh gía
- Chuẩn hóa lại chtrình cho cả lớp bằng việc

treo bảng chtrình mẫu của gv đã chuẩn bị.
+ Tính delta
+ Nếu delta<0 thì pt vô nghiệm
+ Nếu delta >=0 thì kết luận pt
có nghiệm:
x1=(-b+sqrt(delta))/(2*a)
x2=(-b-sqrt(delta))/(2*a)
- Hai câu lệnh rẽ nhánh dạng
khuyết hoặc 1 lệnh rẽ nhánh
dạng đầy đủ.
- 1 hs lên bảng viết chtrình
Lấy ý kiến của 2-3hs
Program ptbac2;
Var a, b, c, d, x1, x2: real;
Begin
Write(‘nhap a, b, c ‘);
Read(a,b,c);
D:=b*b-4*a*c;
If d<0 then write(‘pt vo
nghiem’)
else
begin
x1=(-b+sqrt(delta))/(2*a);
x2=-b/a-x1;
write(‘x1= ’,x1:6:2,’ x2= ’,
x2:6:2)
end;
readln;
End.
IV. ĐÁNH GIÁ CUỐI BÀI (5phút)

1. Nội dung đã học
Cấu trúc chung và sơ đồ thực hiện của cấu trúc rẽ nhánh IF
2. Câu hỏi, bài tập về nhà
Xem trước bài: Cấu trúc lặp, sgk, trang 42
- Trả lời câu hỏi 1, 2, 4 sgk trang 50, 51
- Viết chtrình nhập vào 3 số a, b, c và in ra màn hình giá trị lớn nhất trong 3 số đó.
- Viết chtrình giải pt: ax
4
+ bx
2
+ c = 0.
Ngày soạn: 2/10/07
Tiết 12 CẤU TRÚC LẶP (tiết 1/3)
I. MỤC TIÊU
1. Kiến thức
Hiểu nhu cầu của cấu trúc lặp trong biễu diễn thuật toán.
Biết cấu trúc chung của lệnh lặp với số lần biết trước For trong NNLT Pascal
Biết sử dụng đúng 2 dạng lệnh lặp For.
2. Kĩ năng: Bước đầu sử dụng được lệnh lặp For để lập trình giải quyết 1 số bài toán đơn giản.
II. ĐỒ DÙNG DẠY HỌC
1. Giáo viên: Máy vi tính, Projector, sgk, sgv
2. Học sinh: sgk
III. HOẠT ĐỘNG DẠY HỌC
1. Hoạt động 1: (7 phút) Kiểm tra bài cũ
Hđ của GV Hđ của HS
1. Trình bày cấu trúc rẽ nhánh? Sự khác nhau giữa các
dạng rẽ nhánh đó?
2. Viết CT nhập vào 2 số a, b và thực hiện đưa ra màn
hình giá trị của số lớn hơn.
Gọi 2 hs lên bảng trả lời.

Nhận xét, đánh giá cho điểm
Hs1: trình bày miệng
Hs2: trình bày lên bảng
Hs khác nhận xét bài làm của hs2
2. Hoạt động 2: (20 phút)Tìm hiểu ý nghĩa cấu trúc lặp
Giáo viên: Bùi Văn Tú
25

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×