Giáo án Tin Học lớp 11 cơ bản trọn bộ
Trang 1CHƯƠNG I: MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH
Hiểu được khả năng của ng2 lập trình bậc cao, phân biệt được với ng2 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 ng2 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
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ữ
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
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 ng2 máy sẽ
thực hiện được ngay, còn chtrình viết
bằng ng2 bậc cao thì phải chuyển đổi
thành chtrình trên ng2 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
1 K/n lập trình
(Sgk)
Ý nghĩa: tạo ra cácchtrình giải được bàitoán trên MT
2 Chtrình dịch
Trang 2H: Input, Output của chtrình dịch là
gì? ( Có thể cho điểm miệng Hs trả
Trước hết chta tìm hiểu bảng chữ
cái Treo bảng chữ cái
b a va b
a neu b
Xem thử 3 cách mô tả cách nào
đúng
Tl: In: chtrình viết bằng
ng2 bậc caoOut: chtrình trên ng2máy
Tl: (2-3Hs) phát hiện lỗi
cú pháp của chtrìnhnguồn
a K/niệm: Sgk
b Phân loại:
Có 2 loại
- Thông dịch: lần lượtdịch và thực hiện từngcâu lệnh
- Biên dịch: dịch toàn
bộ chtrình rồi mới thựchiệ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
Trần Choi GV trường THPT Phạm Văn Đồng , huyện Mộ Đức, , Quảng Ngãi Page 2
Trang 3H: Lỗi ngữ nghĩa thường được phát
hiện khi nào?
Tl: Khi thực hiện kiểm
thử chtrình
3 Củng cố:
Ba lớp của ng2 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ố ng2 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
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
III HOẠT ĐỘNG DẠY HỌC
1 Hoạt động 1: (7 phút) Kiểm tra bài cũ
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:
Trang 4Mọ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ừngchtrì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 đượckhai 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:
Đ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
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
1 N/cứu sgk và trả lời:
+ Gồm chữ cái, chữ số, dấugạ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ờiThả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ảngcon
+ 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ómkhác, nhận xét và bổ sung
1 Khái niệm Tên
(Sgk)
Ví dụ:
+ Tên dành riêng+ Tên chuẩn+ Tên do người dùng đặt
Ví dụ:
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
Trần Choi GV trường THPT Phạm Văn Đồng , huyện Mộ Đức, , Quảng Ngãi Page 4
Trang 5+ 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 { }
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 TrueXem 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’
để giải thích chtrình rõ ràng dễ hiểu.
{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 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/20012
Trang 6- 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ểncủ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áytí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ũ
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:
Đ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?
- Đọc yêu cầu của câuhỏi và bài tập cuốichương trang 13 SGK
- Suy nghĩ để đưa raphương án trả lời
- Suy nghĩ, trả lời câuhỏi
- Suy nghĩ, trả lời câuhỏi
Câu 1:Ngôn ngữ bậc cao
+ gần với ngôn ngữ tự nhiênhơn,
+ không phụ thuộc vào phầncứng máy tính và một chươngtrình có thể thực hiện trênnhiề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ềukiể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ộ Trần Choi GV trường THPT Phạm Văn Đồng , huyện Mộ Đức, , Quảng Ngãi Page 6
Trang 7Phân tích câu trả lời của
học sinh
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áyrồi thực hiện ngay câu lệnh vừadịch được hoặc báo lỗi nếukhông dịch được
3 Hoạt động 3:
Đặ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
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 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
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:
Trang 8A 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?
(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.
Trần Choi GV trường THPT Phạm Văn Đồng , huyện Mộ Đức, , Quảng Ngãi Page 8
Trang 9CHƯƠNG II: CHƯƠNG TRÌNH ĐƠN GIẢN
Ngày soạn: 29/8/20012
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
III HOẠT ĐỘNG DẠY HỌC
1 Hoạt động 1: (5 phút) Kiểm tra bài cũ
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:
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:
- Dễ viết, dễ đọc và dễhiểu nội dung
2 N/cứu sgk, thảo luận và
Trang 103 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
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
- Khai báo tên chtrình
- Khai báo thư viện CTC
Dãy các câu lệnh;
End.
2 Các thành phần củachương trình
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:
Trần Choi GV trường THPT Phạm Văn Đồng , huyện Mộ Đức, , Quảng Ngãi Page 10
Trang 11Hđ của GV Hđ của HS Nd ghi bảng
1 Chiếu lên bảng một chtrình đơn
chtrình trên, nhưng kết quả chtrình
không thay đổi?
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 3dòng đầu): khai báo tên
CT, khai báo thư viện, khaibáo biến
- Còn lại là phần thân
+ lệnh gán (: =)+ lệnh đưa thông tin ramà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)
Trang 12Ngày soạn: 31/8/20012
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
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ũ
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 đề
Trong toán học để thực hiện đượ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, ExtendedKiể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:
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 đẻ
2 N/cứu Sgk và trả lời
1 Kiểu dữ liệu chuẩn
Trần Choi GV trường THPT Phạm Văn Đồng , huyện Mộ Đức, , Quảng Ngãi Page 12
Trang 13H 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,
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 khilậ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;
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
Var <danh sách biến>:
<kiểu dữ liệu>;
Var a: integer;
2 Khai báo biến
Trang 14và 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?
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à
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ũ
Trần Choi GV trường THPT Phạm Văn Đồng , huyện Mộ Đức, , Quảng Ngãi Page 14
Trang 15- 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
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:
1 ĐVĐ: Để mô tả các thao tác trong
thuật toán, mỗi NNLT đều xác định
và sử dụng một sô kháiniệm cơ bản:
phép toán, biểu thức, gán giá trị
2 Hãy kể các phép toán đã học ở toán
học?
- Trong NNLT Pascal cũng có các
phép toán đó nhưng được diễn tả
bằng một cách khác
3 Y/cầu Hs n/cứu Sgk và cho biết có
bao nhiêu nhóm phép toán?
H1: Phép chia (/) được sử dụng cho
kiểu dữ liệu nào?
H2: Phép Mod, Div được sử dụng cho
kiểu dữ liệu nào?
H3: Kết quả của phép toán quan hệ
thuộc 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, chialấy nguyên
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ệ
Trang 16c Các bước tiến hành:
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
- 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 ax2 + 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
1 2
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
1 Suy nghĩ, trả lời
- Gồm 2 phần: toán hạng,toán tử
Toán tử: +, -, *, /, mod,div
* Thứ tự thực hiện: Sgk
* Chú ý:
+ Nên dùng biến trunggian để tránh việc tính 1biểu thức nhiều lần.+ Biểu thức có chứa hằnghoặc biến kiểu thực, thìgiá trị của biểu thức cũngthuộ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 haynhiều biểu thức số họcđặt trong dấu ngoặc ( )sau tên hàm
Trang 17hiện lệnh bằng cách sử dụng biểu
thức quan hệ Biểu thức quan hệ còn
gọi là biểu thức so sánh được dùng để
so sánh 2 giá trị đúng hoặc sai
- Cho một ví dụ về biểu thức quan hệ
- Thứ tự thực hiện của biểu thức quan
hệ?
- Kết quả mà phép toán quan hệ thuộc
kiểu dữ liệu nào?
5 Biểu thức logic là biểu thức quan
hệ được liên kết với nhau bởi phép
toán logic
- Hãy quan sát biểu thức trong toán
học sau: 2< x 8 và biễu diễn bthức
này trong NNLT Pascal
- Thứ tự thực hiện của bthức lôgic?
- Kết quả mà bthức lôgic thuộc kiểu
dữ liệu nào?
Treo tranh có chứa bảng chân trị của
A và B, y/cầu hs điền giá trị cho A
and B, A or B, not B
- 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
Suy nghĩ và trả lời bằngcách điền vào bảng
A B andA
B
A or B
Not A
+ Kết quả của biểu thứcquan hệ là TRUE hoặcFALSE
VD: - 5 > 2
5 Biểu thức logic.
- Biểu thức logic đơngiản là hằng hoặc biếnlogic
- Dùng để liên kết nhiềubiểu thức quan hệ lại vớinhau
- 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;
- 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
- 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àotên biế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:
Trang 18chung của lệnh gán trong NNLT
+ 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
<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ìnhqua các lệnh và trả lời:
x=2 y=4 TRUE
< tên _biến>:= <b_thức>;VD:
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
Trần Choi GV trường THPT Phạm Văn Đồng , huyện Mộ Đức, , Quảng Ngãi Page 18
Trang 19Ngày soạn: 10/9/20012
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ũ
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: (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:
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
Read(<biến1>,…,<biếnN>); Readln(<biến1>,…,<biếnN>);
Ví dụ
Trang 20Ax2 + 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?
- Quan sát ví dụ của gv
- Suy nghĩ, trả lờiRead: ……
Readln: ……
- Các giá trị phải đượccách nhau ít nhất mộtdấ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:
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
<tham sốN>); Writeln(<thamsố1>, ,
<tham sốN>);
Program vd;
Var x, y, z:integer; Begin
Writeln(‘Nhap vao hai so: ’);
Trần Choi GV trường THPT Phạm Văn Đồng , huyện Mộ Đức, , Quảng Ngãi Page 20
Nhap vao hai so:
5-6
-5 -6 11
Trang 21Hỏ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
Vd: Đoạn CT cho kết quả thế nào?
Writeln(‘DAY THON VI DA’);
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.
Readln(x, y);
Z:= x+y;
Write(x:6, y:6, z:6); Readln
End.
- Khi tham số có kiểunguyên hoặc kiểu kí tựviệc qui định vị trí làgiống nhau
<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:
1 ĐVĐ: Để sử dụng được Pascal trên
máy phải có các file chtrình cần thiết
Y/cầu hs tham khảo Sgk và cho biết
tên các file đó
2 Cách khởi động Tpascal:
Bấm vào biểu tượng Turbo Pascal 7.0
trên màn hình
- Giới thiệu màn hình soạn thảo CT:
bảng chọn, con trỏ, vùng soạn thảo,
1 Tham khảo sgk và trả lời Turbo.exe Turbo.tpl Graph.tpu egavga.bgi
- - - <Han Mac Tu>
_
Trang 225 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
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.
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
Trần Choi GV trường THPT Phạm Văn Đồng , huyện Mộ Đức, , Quảng Ngãi Page 22
Trang 23* 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/20012
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ũ
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
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:
1 Chiếu chtrình lên bảng Y/cầu hs
Trang 24Ctrl+F9Thông báo lỗi
Do căn bậc hai của một
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:
1 Định hướng để hs phân tích bài
- F2, gõ tên file để lưu
- Alt+F9 : biên dịch lỗi
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
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
Trần Choi GV trường THPT Phạm Văn Đồng , huyện Mộ Đức, , Quảng Ngãi Page 24
Trang 25Ngày soạn: 19/09/20012
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
1 Hoạt động 1: (15 phút) Kiểm tra 15 phút
Phát đề cho hs
Thu bài làm của hs Nhận đề và làm bàiNộ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)
- 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
|x|<=y
(|x|<=y) and ((x>=-1)and (x<=1)) and ((y>=0) andy<=1)
Chú ý lắng nghe, để ý cáchxác định giá trị đúng
Trang 26- 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,…)
- Cách tính: a*a*pi/2
Hs độc lập viết chươngtrình
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
Trần Choi GV trường THPT Phạm Văn Đồng , huyện Mộ Đức, , Quảng Ngãi Page 26
Trang 27CHƯƠNG III: CẤU TRÚC RẼ NHÁNH VÀ LẶP
Ngày soạn: 30/9/20012
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ậttoá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ũ
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
2 Hoạt động 2: (5 phút) Tìm hiểu cấu trúc rẽ nhánh thiếu và đủ
Câu lệnh
IFĐ_kiện Đ
Trang 28- Với bài toán trên làm thế nào để tìm
* 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
- 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
- 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đ
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ì …
* 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ậptrình đều có các câulệnh để mô tả cấu trúc rẽnhánh
3 Hoạt động 3: (12 phút)Câu lệnh If …then
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ó
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ùngcâu lệnh:
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
Trang 29Vd2: Tìm nghiệm của pt bậc hai: ax2+bx+c=0
b Cách tiến hành
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?
- 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ị
1 Chú ý dẫn dắt của gv
Khi nhập độ dài âm thì cho
ra dtích, chu vi âm Điềunày không có trong thực tế
- Dùng câu lệnh rẽ nhánh
để kiểm tra giá trị độ dàicác cạnh Nếu độ dàidươ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
+ Tính delta+ Nếu delta<0 thì pt vônghiệm
+ Nếu delta >=0 thì kếtluận pt có nghiệm:
x1=(-b+sqrt(delta))/(2*a)x2=(-b-sqrt(delta))/(2*a)
- Hai câu lệnh rẽ nhánhdạng khuyết hoặc 1 lệnh rẽnhánh dạng đầy đủ
- 1 hs lên bảng viết chtrìnhLấy ý kiến của 2-3hs
Vd1: Viết chương trìnhnhập vào độ dài 2 cạnhcủa một hình chữ nhật,tính chu vi, diện tích củahcn đó
Vd2: Tìm nghiệm của ptbậc hai: ax2+bx+c=0
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: ax4 + bx2 + c = 0
Trang 30Ngày soạn: 2/10/20012
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
III HOẠT ĐỘNG DẠY HỌC
1 Hoạt động 1: (7 phút) Kiểm tra bài cũ
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
a Mục tiêu: Hs thấy được sự cần thiết của cấu trúc lặp trong lập trình.
b Nội dung:
- Bài toán 1: Viết CT tính tổng
100
1
2
1 1
1 1
a a S
- Bài toán 2: Ông An có số tiền là S, ông gửi tiết kiệm ngân hàng với lãi suất 1,5%/tháng Hỏi sau
12 tháng (không rút tiền lãi hàng tháng) ông ta được số tiền là bao nhiêu?
c Các bước tiến hành:
1 Nêu bài toán 1 đặt vấn đề
- Hãy xác định công thức toán học để
tính tổng
Gợi ý phương pháp: Ta xem S là một
cái xô, các số hạng là những cái ca có
dung tích khác nhau, khi đó việc tính
tổng trên tương tự như việc đổ các ca
nước vào xô S
- Có bao nhiêu lần đổ nước như vậy?
- Mỗi lần đổ 1 lượng là bao nhiêu?
- Phải viết bao nhiêu lệnh để thể hiện
việc này?
2 Nêu bài toán 2 để đặt vấn đề tiếp
tục.(treo bảng chứa nội dung bài toán)
- Em hiểu như thế nào về cách tính
tiền gửi tiết kiệm trong bài toán 2
1 Chú ý quan sát bài toán
2
1 1
1 1
a a S
Bài toán 2: Ông An có
số tiền là S, ông gửi tiếtkiệm ngân hàng với lãisuất 1,5%/tháng Hỏisau 12 tháng (không rútTrần Choi GV trường THPT Phạm Văn Đồng , huyện Mộ Đức, , Quảng Ngãi Page 30
Trang 31- Số tiền thu được sau tháng thứ nhất
là bao nhiêu?
- Theo y/cầu của bài toán ta cần thực
hiện tính bao nhiêu lần như vậy?
Dẫn dắt: Chương trình được viết như
vậy sẽ rất dài, khó đọc, dễ sai sót cần
có một cấu trúc điều khiển việc lặp lại
thực hiện các công việc ở trên
- Trong tất cả mọi NNLT đều có một
cấu trúc điều khiển việc thực hiện lặp
lại với số lần đã định trước
- S := S + 0.015*S
- Thực hiện 12 lần
- Tập trung theo dõi gvtrình bày
3 Thảo luận theo nhóm để
viết thuật toán:
- Thông báo kết quả viếtđược
- Nhận xét bài làm củanhóm khác
tiền lãi hàng tháng) ông
ta được số tiền là baonhiêu?
3 Hoạt động 3: (15 phút)Tìm hiểu lệnh lặp For trong NNLT Pascal
a Mục tiêu: Hs biết được cấu trúc chung của câu lệnh lặp FOR Hiểu ý nghĩa các thành phần trong
câu lệnh Biết đượ sự thực hiện của máy khi gặp câu lệnh For Vẽ được sơ đồ thực hiện đó
+ <giá trị đầu> phải nhỏ hơn <giá trị cuối>
+ Biến đếm là kiểu nguyên, kí tự hoặc miền con
Giá trị biến đếm tự động tăng(giảm) 1 đơn vị sau khi thực hiện câu lệnh cần lặp.
c Các bước tiến hành:
1 Y/cầu hs n/cứu sgk vàcho biết cấu
trúc chung của lệnh For?
1 Đọc sgk và trả lời FOR <biến đếm>:= <giá trị đầu>
a Dạng tiến
FOR <biến đếm>:= <giá trị
Trang 32Giải thích:
<biến đếm>
- Hỏi: Ý nghĩa của <giá trị đầu>, <giá
trị cuối>, kiẻu dữ liệu của chúng?
Trong btoán 1:<giá trị đầu>, <giá trị
cuối> có giá trị bằng bao nhiêu?
Dẫn dắt: những lệnh nào cần lặp lại
ta đặt sau DO Khi nhiều lệnh cần đặt
sau Do ta phải viết thế nào?
ngược lại là For lùi
2 Y/cầu hs trình bày cấu trúc For lùi.
Hãy so sánh giá trị của <giá trị đầu>
và <giá trị cuối>?
- Hai bài toán trên dùng lệnh For nào
là phù hợp?
TO <giá trị cuối> DO <lệnh cần lặp>;
- để làm giới hạn cho biếnđếm, cùng kiểu với biếnđếm
-<giá trị đầu> là 1
<giá trị cuối> là 100
- Sử dụng câu lệnh ghép
FOR <biến đếm>:= <giá trị cuối>
DOWNTO <giá trị đầu>
Cấu trúc chung của câu lệnh lặp For Sơ đồ thực hiện của lệnh lặp For
2 Câu hỏi, bài tập về nhà
- Sử dụng câu lệnh For hoàn thành chương trình bài toán 1 và 2 đã nêu ở đầu tiết.
- Giải bài tập 5a, 6 sgk/51
- Xem trước phần ví dụ của nội dung cấu trúc lặp có số lần biết trước
Trần Choi GV trường THPT Phạm Văn Đồng , huyện Mộ Đức, , Quảng Ngãi Page 32
bđếm:= <gtrị đầu>
bđếm<=gtrị cuối
Câu lệnh lặp bđếm :=bđếm + 1
Đ
S
bđếm:= <gtrị cuối>
bđếm>=gtrị đầu
Câu lệnh lặp bđếm :=bđếm - 1
Đ
S
Trang 33III HOẠT ĐỘNG DẠY HỌC
1 Hoạt động 1: (7 phút) Kiểm tra bài cũ
1 Trình bày các dạng cấu trúc câu lệnh lặp với
số lần biết trước?
- Gọi hs lên trả lời
2 Viết CT nhập vào 2 số nguyên dương a, b
(a<b), tính và đưa ra màn hình tổng các số
nguyên trong phạm vi từ a đến b
- Cho hs xung phong
Nhận xét, đánh giá, cho điểm
Hs1: trả lời câu hỏi 1
Hs2: trình bày chương trình trên bảng
2 Hoạt động 2: (15 phút) Rèn luyện kĩ năng vận dụng câu lệnh For và câu lệnh rẽ nhánh If
Dẫn dắt: Từ bài toán KTBC ở trên,
nếu ta y/cầu tính và đưa ra màn hình
- Ta cần đưa ra màn hình mấy giá trị?
- Việc chính cần thực hiện trong câu
-Tl: 2 giá trị (S1: tổngchẵn; S2: tổng lẻ)Tl:
Kiểm tra biến đếm i :nếu i là chẵn thìS1:=S1+i ngược lại (i
là lẻ)thì S2:=S2+i
Đứng tại chổ trả lời:
For I:=a To b Do
BÀI TẬP
Bài 1: Viết CT nhập vào 2 số
nguyên dương a, b (a<b),tính và đưa ra màn hình tổngcác số chẵn và tổng các số lẻtrong phạm vi từ a đến b
Var a, b, i , S1, S2 : longint; Begin
Trang 34- Y/cầu hs cả lớp tự hoàn thành
chương trình Cho 1 hs lên bảng trình
bày
* Chuẩn hóa lại bài làm của hs bằng
chương trình mẫu (treo chtrình đã
chuẩn bị trên bảng phụ)
If I mod 2 =0 then S1:=S1+I else S2:=S2+I ;Trình bày trên bảng
Quan sát chtrình củagiáo viên và ghi nhớ
Write(‘Nhap a va b (a<b): ‘); Readln(a, b);
S1 := 0; S2 := 0;
For i := a To b Do
If i mod 2 = 0 then S1 := S1 + i else S2 := S2 + i;
Writeln(‘Tong chan: ’, S1,
’ Tong le: ’,S2); Readln
End.
3 Hoạt động 3: (20 phút) Tiếp tục vận dụng câu lệnh lặp For để giải quyết một bài toán đơn giản.
1 Nêu đề bài toán (Ghi bảng)
- Cách tính tiền gửi tiết kiệm hàng
tháng như thế nào?
- Vậy, công thức tính tiền thu được
sau mỗi tháng như thế nào?
- câu lệnh lặp này lặp bao nhiêu lần?
- Xác định giá trị đầu và giá trị cuối
của câu lệnh For để thực hiện việc lặp
trên?
2 Y/cầu hs viết chương trình vào vở,
cho 1 hs trình bày lên bảng
* Chuẩn hóa lại bài làm của hs bằng
chương trình mẫu (treo chtrình đã
chuẩn bị trên bảng phụ)
3 (Nếu còn thời gian)
Hỏi sau 12 tháng gửi (không rút tiền
lãi hàng tháng), ông ta được số tiền
nhiều hơn số tiền ban đầu là bao
nhiêu?
Ta phải sửa lại chtrình trên như thế
nào?
1 Đọc đề bài toán, phân
tích và trả lời câu hỏi:
Tl: Với số tiền S, saumỗi tháng sẽ có lãi là:
0.015*S
Số tiền này sẽ cộng vào
số tiền ban đầu để tínhlãi cho tháng tiếp theo
Tl: S := S + 0.015*S;
Tl: 12 lầnTl: gtrị đầu là 1; gtrịcuối là 12
2 Thảo luận và tự viết
chương trìnhQuan sát chtrình củagiáo viên và ghi nhớ
3 Suy nghĩ và trả lời
Bài 2: Ông Ba có số tiền là
S, ông gửi tiết kiệm ngânhàng với lãi suất1.5%/tháng Hỏi sau 12tháng gửi (không rút tiềnlãi hàng tháng), ông tađược số tiền là bao nhiêu?
Var s:real; i:byte;
la: ’,S:8:3); Readln
End.
IV ĐÁNH GIÁ CUỐI BÀI (3phút)
Câu hỏi, bài tập về nhà
Làm một số bài trong sách bài tập Tin học 11: 3.23, 3.29; 3.31
Xem trước phần nội dung cấu trúc lặp với số lần chưa biết trước While
Trần Choi GV trường THPT Phạm Văn Đồng , huyện Mộ Đức, , Quảng Ngãi Page 34
Trang 35Ngày soạn: 16/10/20012
I MỤC TIÊU
1 Kiến thức
- Biết được ý nghĩa của cấu trúc lặp có số lần lặp chưa biết trước
- Biết được cấu trúc chung của lệnh lặp While trong NNLT Pascal
III HOẠT ĐỘNG DẠY HỌC
1 Hoạt động 1: (10 phút) Tìm hiểu ý nghĩa của cấu trúc lặp có số lần chưa biết trước
a a
1 1
cho đến khi 1 0 001
N a
- Bài toán 2: Ông An có số tiền là A đồng, ông gửi tiết kiệm ngân hàng với lãi suất 1,5%/tháng.Hỏi sau bao nhiêu tháng (không rút tiền lãi hàng tháng) ông ta được số tiền lớn hơn B đồng?
c Các bước tiến hành:
1 Nêu nội dung bài toán 1
-Sự khác nhau của bài toán này với
bài toán tính tổng đã học ở tiết trước?
- Lặp bao nhiêu lần?
- Lặp đến khi nào?
2 Nêu nội dung bài toán 2
-Sự khác nhau của bài toán này với
bài toán đã giải ở tiết trước?
- Lặp bao nhiêu lần?
- Lặp đến khi nào?
Tóm lại, qua 2 ví dụ trên ta thấy có 1
dạng toán có sự lặp lại của câu lệnh
1 Chú ý lắng nghe, quan sát
và suy nghĩ trả lời-Bài trước: cho giới hạn NBài này: cho giới hạn S
- Chưa xác định được ngay
- Cho đến khi điều kiện
001 0
- Chưa biết, đó chính là sốtháng phải tìm
- Đến khi số tiền thu được >B
Bài toán 1
Bài toán 2
Trang 36nhưng không biết được số lần lặp.
Cần có 1 cấu trúc điều khiển lặp lại 1
công việc nhất định khi thõa mãn 1
điều kiện nào đó.
2 Hoạt động 2: (15 phút) Tìm hiểu cấu trúc lệnh lặp While trong NNLT Pascal
a Mục tiêu:- Biết được cấu trúc chung của lệnh lặp While Hiểu được ý nghĩa của các thành phần
trong câu lệnh Biết được sự thực hiện của máy khi gặp While Vẽ được sơ đồ thực hiện
b Nội dung:
Cấu trúc: While <điều kiện> Do <lệnh cần lặp>;
Sự thực hiện:
Bước 1: Tính giá trị của <điều kiện>
Bước 2: Nếu <điều kiện> có giá trị đúng thì:
thực hiện lệnh cần lặp và quay lại B1
c Các bước tiến hành:
1 Y/cầu hs n/cứu sgk và cho biết cấu
trúc chung của lệnh lặp While
- Trong 2 bài toán lệnh cần lặp là gì?
- Dựa vào cấu trúc, cho biết máy thực
hiện tính <điều kiện> trước hay
* Treo sơ đồ mẫu và giải thích
1 Tham khảo sgk và trả lời
* Chú ý lắng nghe và ghinhớ
3 Câu lệnh While …Do
biến chỉ số (để thay đổi giá trị <điều kiện>)
3 Hoạt động 3: (15 phút) Rèn luyện kĩ năng vận dụng lệnh lặp While
lệnh cần lặp
S Đ
Trang 37Ví dụ 1: Bài toán 2 tìm hiểu ở trên
Ví dụ 2: Viết chương trình tìm ước chung lớn nhất của 2 số nguyên dương M, N được nhập từ bànphím
c Các bước tiến hành:
IV ĐÁNH GIÁ CUỐI BÀI (5phút)
1 Nội dung đã học
- Cấu trúc chung của lệnh lặp While
- Sơ đồ thực hiện của lệnh While và sự thực hiện của máy
2 Câu hỏi, bài tập về nhà