Giáo án giảng dạy môn Tin học 11 - Tiết 1 đến tiết 37

Giáo án giảng dạy môn Tin học 11 - Tiết 1 đến tiết 37

I. Mục đích, yêu cầu.

- Hiểu được khả năng của ngôn ngữ lập trình bậc cao, phân biệt được với 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

 

doc 90 trang Người đăng quocviet Lượt xem 1668Lượt tải 2 Download
Bạn đang xem 20 trang mẫu của tài liệu "Giáo án giảng dạy môn Tin học 11 - Tiết 1 đến tiết 37", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
 Tuần: 01
 Tiết : 01
 Ngày soạn : 04/8/2008
 Ngày dạy : / /2008
Chương
1
MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH 
VÀ NGÔN NGỮ LẬP TRÌNH
Bài 1:
	 	KHÁI NIỆM LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH
Bài 2:
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ôn ngữ 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
Hđ của GV
Hđ của HS
Nd ghi bảng
ĐVĐ: Về lập trình các em chỉ mới được tìm hiểu qua bài các bước để giải bài toán trên máy tính chta chưa có khái niệm cụ thể. Còn ngôn ngữ lập trình chta cũng đã tìm hiểu tất cả ở lớp 10.
H: Vậy có những loại ngôn ngữ lập trình nào?
H: Hãy phân biệt ng2 bậc cao với các loại ng2 khác?
Phân biệt ng2 bậc cao: chtrình viết bằng ng2 bậc cao ko phụ thuộc vào loại máy và phải dùng chtrình dịch để chuyển về ng2 máy.
H: Tóm lại ng2 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 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.
H: Input, Output của chtrình dịch là gì? ( Có thể cho điểm miệng Hs trả lời đúng )
H: nhiệm vụ quan trọng nhất của chtrình dịch là gì?
* Phân biệt Thông dịch và Biên dịch
Phân tích Ví dụ Sgk
ĐVĐ sang bài mới: Để có thể sử dụng một ng2 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 ng2 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 ng2 lập trình với bảng chữ cái của ng2 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ụ: 
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?
Tl:Ng2 máy, hợp ngữ, ng2 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 ng2 bậc cao
Out: chtrình trên ng2 máy.
Tl: (2-3Hs) phát hiện lỗi cú pháp của chtrình nguồn
Tìm hiểu ví dụ Sgk 
Cách1:
If a2+b2>1 then
 if a>b then s=a+b Else s =1;
(* a2+b2<1 thì s =? *)
Cách2:
If a2+b2>1 then
 begin
 if a>b then s=a+b 
 end
Else s =1;
(* a<b thì s =? *)
Cách 3:
If a2+b2>1 and a>b then s=a+b 
 Else s=1 
Tl: Khi thực hiện kiểm thử chtrình.
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. Chương trình dịch
a. K/niệm: Sgk
b. Phân loại:
Có 2 loại
- Thông dịch: lần lượt dịch và thực hiện từng câu lệnh.
- Biên dịch: dịch toàn bộ 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 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 sử dụng nó trong lập trình 
 Tuần: 01
 Tiết : 02
 Ngày soạn : 04/8/2008
 Ngày dạy : / /2008
BÀI 2
CÁC THÀNH PHẦN CỦA NGÔN NGỮ LẬP TRÌNH
I. MỤC TIÊU CẦN ĐẠT
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. PHƯƠNG PHÁP,ĐỒ DÙNG DẠY HỌC
A. Phương pháp:
Thuyết trình, vấn đáp, trực quan, đặt vấn đề
B. Phương tiện:
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. Ổn định lớp: (1 phút)
2. 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.
Hđ của GV
Hđ của HS
Nd ghi bảng
ĐVĐ: Mọi đối tượng trong chtrình đếu phải được đặt tên 
1. N/cứu Sgk nêu qui tắc đặt tên trong Turbo Pascal?
2. Chọn các tên đúng trong bảng sau:
A _24 
A_BC A BC 
5ad A5d
C#BC
Khẳng định lại các tên đúng
3. Y/cầu Hs n/cứu Sgk để biết các khái niệm về tên dành riêng, tên chuẩn, tên tự đặt.
Chia lớp thành 3 nhóm, mỗi nhóm tìm hiểu và trình bày về một loại tên và cho ví dụ.
Treo tranh chứa 1 số tên trong NNLT Pascal đã được chuẩn bị sẵn:
Type Const Integer Dem
Function Byte Inc
 Mang string
HS xác định tên theo từng loại 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ấu gạch dưới
+ Không quá 127 kí tự, không bắt đầu bằng kí tự số.
2. Quan sát và trả lời
A
A_BC
_24
A5d
3. N/cứu sgk và trả lời
Thảo luận theo nhóm và cử người trình bày.
+ Tên dành riêng
+ Tên chuẩn
+ Tên do người dùng đặt
Quan sát và ghi lên bảng con.
+ Từ khóa: Type, Const, function
+ Tên chuẩn: Integer, 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
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
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 (4 phút)
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
 Tuần: 02
 Tiết : 03
 Ngày soạn : 07/8/2008
 Ngày dạy : / /2008
	 	BÀI TẬP	
I. MỤC TIÊU CẦN ĐẠT
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 : PHƯƠNG PHÁP :
	Đưa ra và giải quyết vấn đề, thảo luận nhóm.
III. ĐỒ 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.
IV. HOẠT ĐỘNG DẠY HỌC
1. Ổn đinh lớp :
1. Hoạt động 1: (5 phút) Kiểm tra bài cũ
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: (10 phút)
Hđ của GV
Hđ của HS
Nd ghi bảng
ĐVĐ: Trước khi giải bài tập trong SGK, các em tự ôn lại một số kiến thức mà chúng ta đã học ở các bài trước dựa trên yêu cầu của câu hỏi trang 13 SGK.
Đặt câu hỏi số 1: Tại sao người ta phải xây dựng các ngôn ngữ lập trình bậc cao?
- Nhận xét, đánh giá và bổ sung hướng dẫn cho học sinh trả lời câu hỏi số 1:
Đặt câu hỏi 2: Biên dịch và thông dịch khác nhau như thế nào?
Phân tích câu trả lời của học sinh.
- Đọc yêu cầu của câu hỏi và bài tập cuối chương trang 13 SGK.
- Suy nghĩ để đưa ra phương án trả lời.
- Suy nghĩ, trả lời câu hỏi.
- Suy nghĩ, trả lời câu hỏi.
Câu 1:Ngôn ngữ bậc cao 
+ gần với ngôn ngữ tự nhiên hơn, 
+ không phụ thuộc vào phần cứng máy tính và một chương trình có thể thực hiện trên nhiều máy tính khác nhau; 
+ dễ hiểu, dễ hiệu chỉnh và dễ nâng cấp; 
+ cho phép làm việc với nhiều kiểu dữ liệu và cách tổ chức dữ liệu đa dạng, thuận tiện cho mô tả thuộc toán. 
Câu 2:
Trình biên dịch: duyệt, kiểm tra, phát hiện lỗi, xác định chương trình nguồn có dịch được không? dịch toàn bộ chương trình nguồn thành một chương trình đích có thể thực hiện trên máy và có thể lưu trữ lại để sử dụng về sau khi cần thiết.
Trình thông dịch lần lượt dịch từng câu lệnh ra ngôn ngữ máy rồi thực hiện ngay câu lệnh vừa dịch được hoặc báo lỗi nếu không dịch được
3. Hoạt động 3: (7 phút)
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ĩ ... ảng các bản ghi, tính giá trị trường tb.
B3: đưa các t/tin theo y/cầu ra màn hình. (ten, tb)
2. Thảo luận nhóm và hoàn tất CT,Nộp kết quả
Nhận xét, đánh giá và bổ sung những sai sót của nhóm khác.
3. Quan sát và ghi nhớ
Type hs=record
Ten:string;Toan,li,tb:real;
end;
Manghs=array[1..30] of hs;
Var Lop:manghs;
BEGIN
For i:=1 to 30 do
begin
write(‘Hoc sinh ’,i); 
readln(lop[i].ten);
write(‘diem toan, ly ‘’); 
readln(lop[i].toan,lop[i].li);
lop[i].tb:=(lop[i].toan+lop[i].li)/2;
end;
writeln(‘ Ho va ten |Diemtb ’);
For i:=1 to 30 do
Writeln(lop[i].ten:30, lop[i].tb:8:2);
END.
4. Củng cố: 
Nội dung đã học
Nhắc lại một số khái niệm về bản ghi.
Nhắc lại cấu trúc câu lệnh về việc khai báo, truy cập đến các thành phần của bản ghi .
Khai báo kiểu Record cho bản ghi
5. Dặn dò:
Câu hỏi, bài tập về nhà
	Về nhà học bài và làm bài tập. 
Trả lời câu hỏi sách giáo khoa trang 79 và trang 80.
Tuần: 18,19
Tiết : 36,37
 Ngày soạn : 1/12/2008
 Ngày dạy : / /2008
BÀI ÔN TẬP HỌC KÌ I
I. MỤC TIÊU CẦN ĐẠT
1. Về kiến thức
Nhằm giúp cho học sinh củng cố lại kiến thức của các bài đã học như: Câu lệnh không xác đinh như (While..Do), Câu lệnh lập số lần xác định (For),Kiểu mảng, Kiểu chuỗi.
Học sinh cần hiểu rỏ cú pháp, cách khai báo,Cách nhập/Xuất các phần tử mảng, chuỗi. 
Học sinh cần nắm được các hàm và thủ tục đã học. Áp dụng giản một số bài toán đơn giản.
2. Về kĩ năng
Bước đầu sử dụng câu lệnh có cấu trúc HS cần phảI biết cách khai báo, cách truy xuất, các phép toán trên mảng,trên chuỗi
Rèn luyện kỉ năng sử dụng cấu trúc rẽ nhánh và cấu trúc lặp trong lập trình kiểu mảng.
Rèn luyện kĩ năng vận dụng và linh hoạt trong việc lựa chọn cấu trúc để giải quyết bài toán. 
3. Về thái độ
Tiếp tục xây dựng lòng ham muốn trong lập trình để giải quyết các bài toán bằng máy tính
Tự giác, chủ động, tích cực trong giải quyết các bài tập và xây dựng phẩm chất cần thiết của người lập trình.
II. CHUẨN CỊ CỦA GV, HS
1. Chuẩn bị của GV:
Giáo án, SGK, SBT.
Sử dụng bảng phấn, máy chiếu, máy tính.
2. Chuẩn bị của HS:
Tự ôn bài trước
Dụng cụ học tập
III. PHƯƠNG PHÁP
Diễn giảng, thuyết trình và phát vấn, giải quyết vấn đề, trực quan. 
IV. TIẾN TRÌNH DẠY HỌC
1. Ổn định lớp: Kiểm tra sỉ số, ghi sổ đầu bài (1’)
2. Kiểm tra bài cũ: 
HS1: Nêu khái niệm chuỗi là gì? cách khai báo chuỗi, cách nhập/xuất chuỗi. Áp dụng VCT tính tổng S=1/2+1/3+1/4+------+1/n. N nhập vào từ bàn phím. 
HS2: Nêu khái niệm mảng là gì? cách khai báo mảng, cách nhập/xuất mảng. Áp dụng VCT tính tổng N phần tử. Với n nhập vào từ bàn phím. 
Hướng dẫn(trả lời): trong SBT hoặc SGK 
3. Bài mới:
Hoạt động 1: Củng cố lại kiến thức đã học ở phần Pascal cơ bản 
Hđ của Gv
Hđ của Hs
Nội dung ghi bảng
?Nêu cú pháp, lưu đồ, chức năng câu lệnh while
Cú Pháp:
WHILE DO ;
Cú Pháp:
WHILE DO ;
Giải thích cú pháp và lưu đồ câu lệnh bên ?
?Nêu cú pháp , lưu đồ, chức năng câu lệnh Repeat
Giải thích cú pháp và lưu đồ câu lệnh bên ?
So sánh sự giống nhau v à khác nhau giửa câu lệnh While v à Repeat
CV
ĐK
F
T
Lưu đồ
Chức Năng
Vào câu lệnh chương trình kiễm tra ĐK, Nếu ĐK đúng (T) thì chương trình thực hiện công việc rồi quay lại kiễm tra ĐK tiếp, công việc cứ tiếp tục như vậy cho đến khi ĐK sai (F) thì thoát khỏi câu lệnh lặp.
Cú Pháp:
REPEAT UNTIL 
Công việc
ĐK
Lưu đ ồ
Chức Năng
Vào câu lệnh Repeat chương trình thực hiện tuần tự các câu lệnh, sau đó kiểm tra ĐK nếu ĐK sai (F) thì quay lại thực hiện công việc tiếp. Công việc được thực hiện cho đến khi ĐK đ úng (T) thì thoátkhỏi câu lệnh lặp. 
Giống nhau là câu lệnh lặp số lần không xác đinh.
Khác nhau:
Câu lệnh While kiểm tra ĐK trước thực hiện cộng việc sau Câu lệnh While nếu là lệnh ghép thì bắt buộc phải có cặp t ừ khoá Begin ..End;
CV
ĐK
F
T
Lưu đồ
Chức Năng
Vào câu lệnh chương trình kiễm tra ĐK , Nếu ĐK đúng (T) thì chương trình thực hiện công việc rồi quay lại kiễm tra ĐK tiếp , công việc cứ tiếp tục như vậy cho đến khi ĐK sai (F) thì thoát khỏi câu lệnh lặp.
Cú Pháp:
Công việc
ĐK
REPAET UNTIL
Lưu đ ồ
Chức Năng
Vào câu lệnh Repeat chương trình thực hiện tuần tự các câu lệnh, sau đó ki ểm tra ĐK nếu ĐK sai (F) thì quay lại thực hiện công việc tiếp . Công việc được thực hiện cho đến khi ĐK đ úng (T) thì thoát khỏi câu lệnh lặp .
Giống nhau là câu lệnh lặp số lần không xác đinh.
Khác nhau:
Câu lệnh While kiểm tra ĐK trước thực hiện cộng việc sau Câu lệnh While nếu là lệnh ghép thì bắt buộc phải có cặp t ừ khoá Begin ..End;
?Nêu cú pháp, lưu đồ, chức năng câu lệnh For
Giải thích cú pháp và lưu đồ câu lệnh bên và phát biểu chức năng ?
Mảng (Array)
Sau khi học xong bài mảng học sinh cần nắm vững một số ý như sau:
Học thuộc khái niệm mảng là gì ?
Cách khai báo mảng 1 chiều 
Cách khai báo mảng nhiều chiều
Cách truy xuất phần tử của mảng :
Áp dụng giải một số bài 
Cú Pháp(dạng tiến) :
For:= To Do ; 
Cú Pháp(dạng lùi) :
BĐ <= GTC
BienDem:= 
CôngViec
Biendem:=Bienđem ± 1
For:= DownTo Do ; 
Lưu Đồ
 B1
 B2
 B3
Mảng (Array) là tập hợp các phần tử cố định có cùng kiểu gọI là kiểu phần tử ( KPT là kiểu vô hướng, kiểu tập hợp). Gọi chung là kiểu mảng, Có 2 loạI mảng là mảng 1 chiều và mảng nhiều chiều (mảng 2 chiều )
Var :Array [tậpchỉ số] Of ;
Var : Array [tập chỉsố1,tậpchỉsố2]Of ;
Tổng quát ,để truy xuất một phần tử của mảng n chiều thì ta có cần đủ n giá trị của n chỉ số . cách truy xuất một mảng A được viết như sau: A[chỉsố1,chỉsố2] ,mỗi phần tử của mảng xem như một biến độc lập, ta có thực hiện mỗi thao tác với biến này
HS xem bài tập đã giải ở lớp
Cú Pháp(dạng tiến) :
For:= To Do ; 
Cú Pháp(dạng lùi) :
For:= DownTo Do ; 
Mảng (Array) là tập hợp các phần tử cố định có cùng kiểu gọI là kiểu phần tử ( KPT là kiểu vô hướng ,kiểu tập hợp). GọI chung là kiểu mảng,Có2 loạI mảng là mảng 1 chiều và mảng nhiều chiều (mảng 2 chiều )
Var :Array [tậpchỉ số] Of ;
Var : Array [tập chỉ số1,tập chỉ số2] Of ;
Tổng quát,để truy xuất một phần tử của mảng n chiều thì ta có cần đủ n giá trị của n chỉ số. cách truy xuất một mảng A được viết như sau: A[chỉsố1,chỉ số2] ,mỗi phần tử của mảng xem như một biến độc lập, ta có thực hiện mỗi thao tác với biến này
tập đơn giản trong sách giáo khoa và bài tập ghi ở lớp.
KIỂU CHUỔI
Sau khi học xong bài chuỗi (String) học sinh cần nắm vững một số ý như sau:
Học thuộc khái niệm chuỗi là gì ?
Cách khai báo chuỗi :
Cách truy xuất phần tử của chuỗi :
Học sinh cần nắm vững các thao tác trên chuỗi-Các hàm và thủ tục đối với kiểu chuỗi
Áp dụng giải một số bài tập đơn giản trong sách giáo khoa và bài tập ghi ở lớp.
HS xem bài tập đã giải ở lớp 
Là 1 dãy các ký tự trong bảng mã ASCII. Số ký tự có trong chuỗi gọi là độ dài của chuỗi, Chuỗi không có ký tự nào gọi là chuỗi rổng. Để khai báo chuỗi người ta dùng từ khoá STRING. các hằng chuỗi đặt trong cập dấu nháy đơn (‘).
Var Tên Biến:String[n];
Nghe và xem lại tập 
Là 1 dãy các ký tự trong bảng mã ASCII. Số ký tự có trong chuỗi gọi là độ dài của chuỗi, Chuỗi không có ký tự nào gọi là chuỗi rổng. Để khai báo chuỗi người ta dùng từ khoá STRING. các hằng chuỗi đặt trong cập dấu nháy đơn (‘).
Var Tên Biến:String[n];
HS xem bài tập đã giải ở lớp 
5. Củng cố:
Nêu cú pháp, lưu đồ, chức năng câu lệnh while ?
Nêu cú pháp, lưu đồ, chức năng câu lệnh Repeat?
Nêu cú pháp, lưu đồ, chức năng câu lệnh For?
Học thuộc khái niệm mảng là gì ?
Cách truy xuất phần tử của mảng 
Cách khai báo mảng 1 chiều, mảng nhiều chiều
Học thuộc khái niệm chuỗi là gì ?
Cách khai báo chuổ, Cách truy xuất phần tử của chuỗi
Cách truy xuất phần tử của chuỗi :
Học sinh cần nắm vững các thao tác trên chuỗi-Các hàm v à thủ tục đối với kiểu chuỗi
Áp dụng giảI một số bài tập đơn giản trong sách giáo khoa và bài tập ghi ở lớp.
5. Dặn dò
Về nhà học bài và làm bài tập. 
Trả lời câu hỏi sách giáo khoa trang 79 và trang 80.
Tuần sau thi học kì I
KIỂM TRA HỌC KỲ I
I.TRẮC NGHIỆM (Hs khoanh tròn vào một phương án trả lời đúng cho mỗi câu)
Biểu diễn nào dưới đây là Hằng?	A. begin	B. E58	C. 12.4E-5	D. type
Kiểu dữ liệu nào dưới đây thuộc loại kiểu dữ liệu chuẩn:
A. Kiểu kí tự	B. Kiểu xâu	C. Kiểu mảng	D. Kiểu bản ghi
Phép toán nào sử dụng trong biểu thức trả về giá trị True hoặc False
A. Phép toán số học	B. Phép toán quan hệ và phép toán số học
C. Phép toán số học và phép toán logic	D. Phép toán quan hệ và phép toán logic
Chương trình sau đây Đúng hay Sai? Vì sao?
Begin
Writeln(‘Chuc cac em thi tot!’);	A. Sai, vì CT này không có phần khai báo 
Write(‘Dat ket qua cao’);	B. Đúng, vì CT này không cần khai báo
Readln	C. Sai, vì CT này thiếu phần nhập giá trị	 
End.	D. Sai, vì CT này thiếu phần tính toán
Chương trình dịch Pascal cấp phát bao nhiêu Byte bộ nhớ cho các biến trong khai báo sau:
Var A: array[1..10] of integer;	A. 28	B. 36
I, N: real; q, b: word;	C.5	D. 18	
Giá trị của các biểu thức boolean sau đây là gì với N = 300, p = - 0.001, 
q = 0.001, c = ‘5’
(1) 2*N <=500
(2) (abs(p) = q) and (c < ‘4’)
(3) Not (c > ‘7’)
A. False – False – True	B. False – True – False	
C. False – True – True	D. False – False – False
Sau khi thực hiện đoạn chương trình sau thu được kết quả xâu S là gì?
begin
S := ‘GBCDEFA’;
T := S[1];
S[1] := S[length(S)];
 S[length(S)] := T;	A. ‘GBCDEFA’	B. ‘ABCDEFG’
end;	C. ‘AGBCDEF’	D. ‘BCDEFAG’	
Trong NNLT Pascal, hai xâu kí tự được so sánh dựa trên?
A. Độ dài tối đa của hai xâu
B. Mã của từng kí tự trong các xâu lần lượt từ trái sang phải
C. Độ dài thực sự cảu hai xâu
D. Số lượng các kí tự khác nhau trong xâu
Hãy đọc kỹ đoạn chương trình sau: 
Program timkiem;
Var m: array[1..100] of integer;
	i, n, k: integer;
Begin	Write('Ban can nhap bao nhieu so:'); Readln (n);
	For i:=1 to n do
	Begin 
	Write('Nhap so thu ',i,':'); Readln(m[i]); 
	End;
	Write('Nhap so can tim:'); Readln(k);
	i:=1;
	While (m[i]k)and (i<=n)Do i:=i+1;
	If i>n then Writeln ('Trong day ban da nhap khong co so nguyen nao bang ',k)
	else Writeln('Trong day ban da nhap co so bang',k);
	Readln;
End.
Và hãy trả lời các câu hỏi 9 và 10: 
Trong chương trình trên có đoạn lệnh có sử dụng vòng lặp While Do, chương trình trên thoát khỏi vòng lặp khi:
A. m[ i ]=k 	 	B. (m[ i ]=k) hoặc( i>n) 	C. i>n 	 	D. (m[ i ]=k) và (i>n) 
Giả sử khi chạy chương trình, ta tạo dữ liệu cho mảng m gồm các phần tử lần lượt là: 7, 5, 19, 54 và 20. Và gán cho biến k mang giá trị 54. Vậy sau khi thực hiện xong chương trình, trên màn hình sẽ có dòng thông báo: 
A. Trong dãy bạn đã nhập có số bằng k B. Trong dãy bạn đã nhập có số bằng 54 
C. Trong day ban da nhap co so bang k D. Trong day ban da nhap co so bang 54 
II. TỰ LUẬN
1. Cho chương trình
Var i: byte;
Begin
	For i:=1 to 35 do 
If i mod 3 = 0 then write (i:4);
	Readln
End.
a. Hãy viết lại chương trình bằng cách thay đổi cấu trúc FOR bằng cấu trúc WHILE.
b. Cho biết chương trình trên thực hiện công việc gì?
2. Viết CT tạo mảng A có N (N£200) phần tử là số nguyên. In ra màn hình mảng vừa tạo. Tính và đưa ra màn hình giá trị trung bình của các số nguyên dương lẻ có trong mảng A.

Tài liệu đính kèm:

  • docTin 11(1).doc