Giáo án môn Tin học khối 11 - Trường THPT Hà Lang

Giáo án môn Tin học khối 11 - Trường THPT Hà Lang

I. MỤC TIÊU BÀI HỌC

1.Về kiến thức

- Biết và phân biệt được có 3 lớp ngôn ngữ lập trình là 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 một trong những nhiệm vụ quan trọng của chương trình dịch là phát hiện lỗi cú pháp của chương trình nguồn.

2. Về kỹ năng

 - Nắm được khái niệm lập trình và ngôn ngữ lập trình.

 - Nắm được vai trò của chương trình dịch, phân biệt được biên dịch và thông dịch.

 

doc 106 trang Người đăng quocviet Lượt xem 1708Lượt tải 1 Download
Bạn đang xem 20 trang mẫu của tài liệu "Giáo án môn Tin học khối 11 - Trường THPT Hà Lang", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tiết 01 	Ngày dạy:B1:	,B2: 	 	 B3:	,B4:	 
	 B5:	,B6:	
Chương I 	 B7:	,B8:	 
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 VỀ LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH
I. MỤC TIÊU BÀI HỌC
1.Về kiến thức 
- Biết và phân biệt được có 3 lớp ngôn ngữ lập trình là 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 một trong những nhiệm vụ quan trọng của chương trình dịch là phát hiện lỗi cú pháp của chương trình nguồn.
2. Về kỹ năng 
	- Nắm được khái niệm lập trình và ngôn ngữ lập trình.
	- Nắm được vai trò của chương trình dịch, phân biệt được biên dịch và thông dịch.
3. Về thái độ
	- Chăm chú lắng nghe và nắm vững vấn đề.
II. CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH
1. Giáo viên: Sách giáo viên, sách giáo khoa, giáo án.
2. Học sinh: xem trước bài ở nhà, đồ dùng học tập, vở ghi, sgk.
III. TIẾN TRÌNH TỔ CHỨC DẠY HỌC
Kiểm tra bài cũ
Không kiểm tra.
* Dẫn dắt vào bài (2p): Trong chương trình lớp 10 các em đã được biết đến một số khái niệm ngôn ngữ lập trình, chương trình dịchtrong bài học hôm nay chúng ta sẽ tập chung làm sáng tỏ hơn về chương trình dịch(bao gồm biên dịch và thông dịch).
2. Bài mới
HOẠT ĐỘNG CỦA GV VÀ HS
NỘI DUNG BÀI MỚI
*Hoạt động1: Tìm hiểu khái niệm lập trình(20p).
- GV: Em hãy nêu các bước giải bài toán trên máy vi tính?
- HS: Suy nghĩ và trả lời câu hỏi.
- GV:Phân tích câu trả lời và nhắc lại các bước giải một bài toán trên máy vi tính. 
Có 5 bước:
+ Bước 1: Xác định bài toán.
+ Bước 2: Lựa chọn hoặc thiết kế thuật toán.
+ Bước 3: Viết Chương Trình.
+ Bước 4: Hiệu Chỉnh.
 + Bước 5: Viết tài liệu
- GV: Làm sao để máy tính có thể hiểu và thực hiện các thuật toán đã lựa chọn để giái bài toán?
- HS: Suy nghĩ và trả lời
- GV: Giới thiệu với các em khái niệm lập trình.
- HS: Lắng nghe ghi chép.
Lưu ý: giải thích thêm
Ý nghĩa của lập trình là để tạo ra các chương trình giải được các bài toán trên máy tính. Về cấu trúc dữ liệu, cần lựa chọn sao cho ít tốn kém bộ nhớ.
- GV: Giới thiệu cho học sinh biết có 3 loại ngôn ngữ lập trình.
- HS: Trả lời ghi chép, lắng nghe.
- GV: Lưu ý học sinh: Chương trình viết bằng ngôn ngữ máy có thể nạp trực tiếp vào bộ nhớ và thực hiện ngay. Trình bày và giới thiệu cho học sinh biết về hợp ngữ.
- HS: Quan sát, ghi chép, lắng nghe.
- GV: Giới thiệu với các em về ngôn ngữ bậc cao.
- HS: Lắng nghe, ghi chép, quan sát.
*Hoạt động 2: Tìm hiểu chương trình dịch(17p).
- GV: Thông báo để thực hiện trên máy tính, chương trình cần được dịch sang ngôn ngữ máy.
- HS: Lắng nghe, ghi chép.
- GV: Giới thiệu khái niệm và quy trình hoạt động của chương trình dịch.
- HS: Quan sát, lắng nghe, ghi chép.
- GV: yêu cầu HS đọc ví dụ SGK/4-5, rút ra nhận xét.
- HS: Đọc SGK, rút ra nhận xét.
- GV: Nhận xét, kết luận.
+ Cách 1: Không có tài liệu nào được lưu trữ.
+ Cách 2: Có 2 tài liệu tiếng Việt và tiếng Anh có thể lưu trữ dùng lại về sau.
- HS: Lắng nghe, ghi nhớ.
- GV:Vậy có mấy loại chương trình dịch? 
- HS: Đọc SGK, trả lời.
- GV: Nhận xét, kết luận.
- GV: Nêu các bước thực hiện thông dịch
 Và bổ sung thêm cho học sinh: Thông dịch thích hợp trong đối thoại giữa người và hệ thống. Tuy nhiên một câu lệnh nào đó được lập lại bao nhiêu lần thì nó sẽ được dịch bấy nhiêu lần. 
- GV: Nêu ví dụ cho học sinh.
- HS: Lắng nghe, ghi chép.
- GV: Giới thiệu cho học sinh biết về biên dịch(compiler).
- HS: Lắng nghe, ghi chép.
- GV: Nêu ví dụ cho học sinh và nhận xét: Trong chương trình thông dịch, không có chương trình đích để lưu trữ. Trong biên dịch cả chương trình nguồn và đích đều có thể lưu trữ
- HS: lắng nghe, ghi nhớ.
I. Tìm hiểu chung về lập trình
1. Khái niệm: Lập Trình là sử dụng một cấu trúc dữ liệu và các câu lệnh của ngôn ngữ lập trình cụ thể để mô tả dữ liệu và diễn đạt các thao tác của bài toán.
 2. Các loại ngôn ngữ lập trình
a. Ngôn ngữ máy:
- Chương trình viết bằng ngôn ngữ máy có thể nạp trực tiếp vào bộ nhớ và thực hiện ngay 
- Là ngôn ngữ duy nhất máy tính có thể trực tiếp hiểu và thực hiện.
- Mỗi loại máy tính có một ngôn ngữ riêng của mình.
b. Hợp ngữ:
- Phát triển từ ngôn ngữ máy.
- Ít phụ thuộc vào máy và dễ viết chương trình hơn ngôn ngữ máy. Rất gần với ngôn ngữ máy.
c. Ngôn ngữ bậc cao:
- Khá gần với ngôn ngữ tự nhiên.
- Không phụ thuộc vào loại máy. Có thể thực hiện trên nhiều loại máy tính khác nhau.
II. Chương trình dịch
1. Khái niệm: Chương trình chuyển đổi từ ngôn ngữ bậc cao sang ngôn ngữ máy gọi là chương trình dịch.
*Quy trình
Chương trình dịch
Chương trình nguồn
Chương trình đích
2. Các loại chương trình dịch
a. Thông dịch(Interpreter) gồm 3 bước:
- Kiểm tra tính đúng đắn của câu lệnh kế tiếp trong chương trình nguồn;
- Chuyển đổi câu lệnh đó thành 1 hay nhiều câu lệnh tương ứng trong ngôn ngữ máy;
- Thực hiện câu lệnh vừa chuyển đổi.
Ví dụ: Thực hiện các câu lệnh trong môi trường DOS là thông dịch.
b. Biên dịch gồm 2 bước:
- Duyệt, phát hiện lỗi, kiểm tra tính dúng đắn của câu lệnh trong chương trình nguồn.
- Dịch toàn bộ chương trình nguồn thành chương trình đích và có thể lưu trữ để sử dụng khi cần thiết.
Ví dụ: Ngôn ngữ lập trình Turbo Pascal sử dụng trình biên dịch.
3. Củng cố, luyện tập (4p)
Qua tiết học này, các em đã có khái niệm chính xác hơn về lập trình và ngôn ngữ lập trình, về chương trình dịch, phân biệt được hai loại chương trình dịch: Biên dịch và thông dịch.
4. Hướng dẫn học sinh tự học ở nhà (2p)
- Ôn tập lại bài học.
- Đọc trước bài 2: “Các thành phần của ngôn ngữ lập trình” chuẩn bị cho tiết học sau.
Tiết 02 	Ngày dạy:B1:	,B2: 	 	 B3:	,B4:	 
	 B5:	,B6:	
	 B7:	,B8:	 
BÀI 2: CÁC THÀNH PHẦN CỦA NGÔN NGỮ LẬP TRÌNH
I. MỤC TIÊU BÀI HỌC
1.Về kiến thức 
- Biết được ngôn ngữ lập trình có 3 thành phần cơ bản là: Bảng chữ cái, cú pháp và ngữ nghĩa. Hiểu và phân biệt được 3 thành phần này.
- Biết được các thành phần cơ bản của Pascal: Bảng chữ cái, tên, tên chuẩn, tên dành riêng(từ khoá), hằng và biến.
- Phân biệt được tên, hằng và biến. Biết đặt tên đúng.
2. Về 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.
	- Phân biệt được tên, hằng và biến.
	- Biết đặt tên đúng và nhận biết được tên sai qui định.
	- Sử dụng đúng chú thích.
3. Về thái độ
	- Học sinh hiểu bài và có hứng thú với bài học.
	- Học sinh ngày càng yêu thích môn học hơn.
II. CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH
1. Giáo viên: Sách giáo viên, sách giáo khoa, giáo án.
2. Học sinh: Xem trước bài ở nhà, đồ dùng học tập, vở ghi, sgk.
III. TIẾN TRÌNH TỔ CHỨC DẠY HỌC
Kiểm tra bài cũ
	Câu 1: Hãy nêu khái niệm ngôn ngữ lập trình và ý nghĩa của nó?(2p)
	Câu 2: Chương trình dịch là gì?(2p)
	* Dẫn dắt vào bài (2p): Chúng ta biết rằng ngôn ngữ lập trình là để viết 	chương trình giải các bài toán trên máy tính. Vậy nó bao gồm những thành 	phần nào? Bài học hôm nay sẽ trả lời câu hỏi đó.	
	2. Bài mới
HOẠT ĐỘNG CỦA GV VÀ HS
NỘI DUNG BÀI MỚI
*Hoạt động1: Tìm hiểu các thành phần cơ bản của ngôn ngữ lập trình (15p)
- GV: giới thiệu cho học sinh về 3 thành phần cơ bản của mỗi ngôn ngữ lập trình.
- HS: Nghe giảng, ghi chép.
- GV: Trong tiếng việt của chúng ta sử dụng các ký tự trong bảng chũ cái tiếng việt để ghép thành từ, thành câu, thành văn bản. Tương tự trong ngôn ngữ lập trình cũng có bảng chữ cái.
- GV: Giới thiệu khái niệm bảng chữ cái và tập hợp các kí tự hợp lệ.
- HS: Xem sgk-trang 9, ghi chép.
- GV: Bảng chữ cái của các ngôn ngữ lập trình khác nhau có sự khác nhau.
- GV: Lấy ví dụ cho HS hiểu.
- HS: Ghi chép, lắng nghe.
- GV: Giới thiệu cho học sinh biết cú pháp là gì? Và nêu tác dụng của cú pháp.
- GV: Cú pháp cũng có sự khác nhau giữa các ngôn ngữ lập trình.
- GV: Lấy ví dụ.
- HS: Lắng nghe, ghi chép.
- GV: Giới thiệu cho học sinh biết về thành phần ngữ nghĩa.
- HS: Ghi chép.
- GV: Đưa ví dụ minh họa: Từ “Chạy” trong 2 câu sau mang nghĩa khac nhau
Bình và Hưng thi chạy
Nhân dân ĐBSCL chạy lũ.
à Tổ hợp ký tự trong ngữ cảnh khác nhau mang nghĩa khác nhau.
- HS: Quan sát, suy nghĩ, ghi chép.
- GV: Lưu ý HS, lỗi cú pháp dễ phát hiện, lỗi về ngữ nghĩa khó phát hiện. Chỉ khi đưa vào số liệu cụ thể.
*Hoạt động 2: Tìm hiểu một số khái niệm của ngôn ngữ lập trình(20p)
- GV: Trong cuộc sống hằng ngày ta phân biệt giữa người này với người kia qua tên
- GV: Trong ngôn ngữ lập trình cũng vậy, để phân biệt các đối tượng trong chương trình thì phải đặt tên cho các đối tượng đó.
- HS: Nghe giảng, ghi bài
- GV: Quy tắc đặt tên được tuân theo từng ngôn ngữ lập trình và chương trình dịch cụ thể.
- GV: Cho học sinh làm một số ví dụ để phân biệt được tên đúng, tên sai. 
- HS: Học sinh tìm tên đúng trong Pascal
Tênđúng:
 Giai_Phuong_Trinh
 _Timx
 PROGRAM
 Integer
 type
 Abs.
- GV: Trong Pascal, người ta đặt tên các đối tượng theo 3 nhóm: tên dành riêng, tên chuẩn, tên do người lập trình đặt.
- GV: Yêu cầu học sinh đọc sách và phát biểu khái niệm về 3 nhóm tên.
- HS: Đọc SGK, trả lời.
- GV: Nhận xét, kết luận.
- GV: hãy chỉ ra các tên sai trong các đặt tên sau đây: A, R23, _65, A GH, P34_c, 8Jh, F#j, GJ, F@j ?
Trả lời: Tên sai là: A GH, 8Jh, F#j, F@j
- GV: Trong ngôn ngữ Pascal, khi cần lưu trữ những đại lượng có giá trị thay đổi hay không đổi người ta sẽ dùng đại lượng hằng và biến.
Vậy hằng hay biến là gì? Chức năng của chúng ra sao? Phần cuối cùng ta sẽ đi tìm hiểu khái niệm hằng và biến.
- HS: Lắng nghe.
- GV: Các em hãy đọc sách và cho biết thế nào là hằng ,có mấy loại hằng? 
- HS: Đọc sách và trả lời câu hỏi của giáo viên.
- GV: Các em hãy nhìn lên bảng ví dụ sau và cho biết đâu là hằng xâu, hằng chuỗi, hằng logic
24,74,12.3
‘NhaTrang’, ‘tour’
False, True.
- GV: Yêu cầu hs đọc sách và nêu khái niệm Biến là gì?
- HS: Đọc sách, trả lời câu hỏi, và ghi chép.
- GV: Các em hãy cho biết tên biến và tên hằng là tên chuẩn hay tên dành riêng hay tên do người lập trình đặt.
- HS: Học sinh đọc sách và trả lời:
 Tên do người lập trình đặt
- GV: Khi viết chương trình, có những đoạn chương trình khó hiểu, để chương trình rõ ràng, người đọc có thể dễ dàng hiểu được phần mã mà người lập trình viết, ngôn ngữ Pascal đưa ra khái niệm chú thích.
- GV: Ngôn ngữ khác nhau thì cách viết chú thích cũng khác nhau.
- GV: Sau khi viết được một chương trình thì người lập trình phải tiến hành “chạy thử” để kiểm tra xem phần mã mình viết có đúng như ý tưởng ban đầu khi thiết kế không, vậy em nào cho biết, các lệnh được viết trong cặp dấu {} hay (* *) có được chương trình biên dịch không?
- HS: Dấu chú thích sẽ được bỏ qua khi Pascal biên dịch chương trình
I. Các thành phần cơ bản
Mỗi loại ngôn ngữ lập trình gồm 3 thành phần cơ bản:
1. Bảng chữ cái
 Bảng chữ cái là tập các kí tự dùng để viết chương trình. Không được dùng bất kì kí tự nào ngoài các kí tự quy định trong bảng chữ cái.
+ Các chữ cái thường và các chữ cái in hoa.
+ 10 chữ số thập phân.
+ Các ký tự đặc biệt.
Ví dụ: Bảng chữ cái của ngôn ngữ C++ so với Pascal chỉ thêm vài kí tự là ( “ ), ( \ ), ( ! ).
2. Cú Pháp
Là bộ quy tắc dùng để viết chương trình
Tác dụng:
- Giúp ngườ ... ch các thành phần trong cấu trúc?
2. Bài mới
HOẠT ĐỘNG CỦA GV VÀ HS
NỘI DUNG
* Hoạt động 1: Tìm hiểu cách viết và sử dụng hàm (35p)
- GV: (Dẫn dắt) giờ trước chúng ta đã được học cách viết và sử dụng thủ tục, hôm nay chúng ta cùng nghiên cứu cách viết và sử dụng hàm. Cũng như thủ tục, hàm là chương trình con . Điểm khác nhau giữa thủ tục và hàm là ở chỗ hàm luôn cho một giá trị kết quả thuộc kiểu xác định và giá trị đó được gán cho tên hàm, kiểu của hàm phải được khai báo trong phần đầu của hàm . Vậy cách khai báo như thề nào chúng ta vào bài mới.
- GV: Trình bày cú pháp khai báo phần đầu của hàm (ghi bảng)
- HS: Quan sát, ghi bảng
- GV: Hãy giải thích thành phần trong cú pháp?
- HS: Trả lời
- GV: Khác với thủ tục, trong thân hàm cần có lệnh gán giá trị cho tên hàm.
- HS: Nghe giảng, ghi bài
- GV: Yêu cầu HS đọc đề bài VD 1
- GV: Trình chiếu chương trình, gọi HS đứng tại chỗ giải thích cấu trúc thuộc chương trình con.
- HS: Quan sát, trả lời, ghi bài
- GV: Hãy kể tên các biến cục bộ, biến toàn cục, tham số hình thức, tham số thực sự trong chương trình trên ?
- HS: Suy nghĩ và trả lời câu hỏi.
- GV: Yêu cầu HS đọc đề bài VD 2
- HS: Đọc đề bài SGK- T102
- GV: Trình chiếu và giải thích chương trình.
- HS: Quan sát, nghe giảng, ghi bài.
- GV: Việc sử dụng hoàn toàn tương tự với việc sử dụng hàm chuẩn.
- GV: Hãy cho biết tham số hình thức, tham số thực sư, biến cục bộ, biến toàn cục có trong chương trình trên?
- HS: Trả lời câu hỏi.
1. Cách viết và sử dụng thủ tục
2. Cách viết và sư dụng hàm
- Cú pháp khai báo phần đầu của hàm:
FUNCTION []: ;
+ Kiểu dữ liệu là kiểu dữ liệu của giá trị mà hàm trả về và chỉ có thể là các kiểu integer, real, char, boolean, string.
- Gán giá trị cho tên hàm:
:= ;
* VD 1: Xét chương trình thực hiện việc rút gọn một phân số, trong đó có sử dụng hàm tính ước chung lớn nhất (ƯCLN) của hai số nguyên.
PROGRAM RUTGON_PHANSO;
VAR TUSO, MAUSO, A: INTEGER;
FUNCETION UCLN(X, Y: INTEGER): INTEGER;
VAR
 SODU: INTEGER;
 BEGIN
 WHILE Y0 DO
 BEGIN
 SODU:= X MOD Y;
 X:=Y;
 Y:=SODU;
 END;
 UCLN:=X;
 END;
BEGIN
 WRITE('NHAP TU SO, MAU SO VAO: ');
 READLN( TUSO, MAUSO);
 A:=UCLN(TUSO, MAUSO);
 IF A>1 THEN
 BEGIN
 TUSO:= TUSO DIV A;
 MAUSO:= MAUSO DIV A;
 END;
 WRITELN(TUSO:5, MAUSO:5);
 READLN
END.
+ Tham số hình thức:
+ Tham số thực sự:
+ Biến cục bộ:
+ Biến toàn cục:
* VD 2: Xét chương trình cho biết giá trị nhỏ nhất trong ba số nhập từ bàn phím, trong đó có sử dụng hàm tìm số nhỏ nhất trong hai số.
PROGRAM MINBASO;
VAR
 A, B, C: REAL;
 FUNCTION MIN(A, B: REAL): REAL;
 BEGIN
 IF A<B THEN
 MIN:=A
 ELSE
 MIN:= B;
 END;
BEGIN
 WRITE('NHAP VAO BA SO: ');
 READLN(A, B, C);
 WRITELN('SO LON NHAT TRONG BA SO LA: ', MIN(MIN(A, B), C));
 READLN
END.
+ Tham số hình thức:
+ Tham số thực sự:
+ Biến cục bộ:
+ Biến toàn cục:
3. Củng cố, luyện tập (3p)
- Giáo viên nhắc lại cấu trúc của một hàm và của thủ tục, nhấn mạnh điểm khác biệt của chúng.
4. Hướng dẫn học sinh tự học ở nhà (2p)
- Làm bài tập 3, 4 SGK- T117
- Đọc trước bài tập và thực hành 6.
---------------------------------------------------------
Tiết 42	Ngày dạy:B1:	,B2: 	 	 B3:	,B4:	 
	 B5:	,B6:	
	 B7:	,B8:	 
BÀI TẬP VÀ THỰC HÀNH 6
I. Mục tiêu
1. Kiến thức
- Rèn luyện các thao tác xử lý xâu, biết tạo chữ chạy trên màn hình.
- Củng cố cho học sinh một số khái niệm về chương trình con: Thủ tục, hàm, tham số giá trị, tham số biến, tham số thực sự, biến cục bộ, biến toàn cục.
- Vận dụng kiến thức xây dựng được chương trình trên máy tính.
2. Kỹ năng 
- Biết thao tác kiểu dữ liệu xâu;
- Biết sử dụng chương trình con
3. Thái độ 
- Có ý thức bảo vệ tài sản phòng máy;
- Góp phần hình thành và rèn luyện tư duy lập trình, tác phong của người lập trình.
II. CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH	
1. Giáo viên: Sách giáo viên, sách giáo khoa, sách bài tập, giáo án.
2. Học sinh: Đồ dùng học tập, vở ghi, sgk, sách bài tập.
III. TIẾN TRÌNH TỔ CHỨC DẠY HỌC
1. Kiểm tra bài cũ 
- Kiểm tra kết hợp nội dung thực hành.
2. Bài mới
HOẠT ĐỘNG CỦA GV VÀ HS
NỘI DUNG
* Hoạt động 1: Tìm hiểu chương trình (40p).
- GV: Giải thích hai thủ tục CATDAN và CANGIUA nhằm cung cấp cho HS tạo được dòng chữ chạy trên màn hình (Yêu cầu HS đọc thủ tục SGK- T103)
- HS: Đọc sách, nghe giảng.
- GV: Yêu cầu HS soạn thảo chương trình (ý b), soát lỗi, chạy thử chương trình với nhiều bộ Input khác nhau.
- HS: Thực hành theo nội dung yêu cầu.
a. Tìm hiểu thủ tục CATDAN và thủ tục CANGIUA. 
SGK- T103
b. Theo dõi chương trình sử dụng hai thủ tục trên.
PROGRAM BAI1_103;
TYPE STR79= STRING[79];
VAR S1, S2: STR79;
 STOP: BOOLEAN;
PROCEDURE CATDAN(S1:STR79);
 VAR S2: STR79;
 BEGIN
 S2:= COPY(S1, 2, LENGTH(S1)- 1)+ S1[1];
 END;
PROCEDURE CANGIUA(S: STR[79]);
 VAR I, N:INTEGER;
 BEGIN
 N:= LENGTH(S);
 N:= (80-N) DIV 2;
 FOR I:=1 TO N DO
 S:= ' ' +S;
 END;
BEGIN
 WRITE('NHAP XAU S1');
 RADLN(S1);
 CANGIUA(S1);
 STOP:= FALSE;
 WHILE NOT(STOP) DO
 BEGIN
 GOTOXY(1,12);
 WRITE(S1);
 DELAY(500);
 CATDAN(S1, S2);
 S1:= S2;
 STOP: KEYPRESSED;
 END;
 READLN
END.
3. Củng cố, luyện tập (3p)
- Sử dụng đúng thủ tục và một số thao tác xử lý xâu:
PROCEDURE [];
[]
BEGIN
 	 []
END;
Một số thao tác xử lý xâu:
VAR : STRING [Độ dài lớn nhất của xâu];
COPY(S., vt, N)
LENGTH(S) 
4. Hướng dẫn học sinh tự học ở nhà (2p)
- Đọc trước mục c bài tập và thực hành 6, giờ sau thực hành tiếp.
Tiết 43	Ngày dạy:B1:	,B2: 	 	 B3:	,B4:	 
	 B5:	,B6:	
	 B7:	,B8:	 
BÀI TẬP VÀ THỰC HÀNH 6
I. Mục tiêu
1. Kiến thức
- Rèn luyện các thao tác xử lý xâu, biết tạo chữ chạy trên màn hình.
- Củng cố cho học sinh một số khái niệm về chương trình con: Thủ tục, hàm, tham số giá trị, tham số biến, tham số thực sự, biến cục bộ, biến toàn cục.
- Vận dụng kiến thức xây dựng được chương trình trên máy tính.
2. Kỹ năng 
- Biết thao tác kiểu dữ liệu xâu;
- Biết sử dụng chương trình con
3. Thái độ 
- Có ý thức bảo vệ tài sản phòng máy;
- Góp phần hình thành và rèn luyện tư duy lập trình, tác phong của người lập trình.
II. CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH	
1. Giáo viên: Sách giáo viên, sách giáo khoa, sách bài tập, giáo án.
2. Học sinh: Đồ dùng học tập, vở ghi, sgk, sách bài tập.
III. TIẾN TRÌNH TỔ CHỨC DẠY HỌC
1. Kiểm tra bài cũ 
- Kiểm tra kết hợp nội dung thực hành.
2. Bài mới
HOẠT ĐỘNG CỦA GV VÀ HS
NỘI DUNG
* Hoạt động 1: Tìm hiểu chương trình(40P)
- GV: Yêu cầu HS đọc kỹ đề bài (ý c SGK- T104).
- HS: Đọc SGK
- GV: Nhiệm vụ của thủ tục ChuChay(s, dong) thựchiện, về cơ bản là nhiệm cụ ở câu b đã làm, với thủ tục này có tham số dong quy định dòng nào trên màn hình xảy ra chuyển động của chữ. Như vậy thủ tục ChuChay(s, dong) được thực hiện như sau (Trình chiếu chương trình ).
- HS: Quan sát, nghe giảng, ghi bài, sau đó thực hành trên máy của mình.
c. Viết thủ tục ChuChay(s, dong) nhận đầu vào là xâu s gồm không quá 79 kí tự và biến nguyên dong, đưa ra xâu s có dạng chữ chạy ở dòng dong, viết và chạy chương trình có sử dụng thủ tục này. 
PROGRAM Y_C_T103;
USES CRT;
TYPE STR79= STRING[79];
VAR S1, S2: STR79;
 STOP: BOOLEAN;
PROCEDURE CATDAN(S1:STR79);
 VAR S2: STR79;
 BEGIN
 S2:= COPY(S1, 2, LENGTH(S1)- 1)+ S1[1];
 END;
PROCEDURE CANGIUA(S: STR79);
 VAR I, N:INTEGER;
 BEGIN
 N:= LENGTH(S);
 N:= (80-N) DIV 2;
 FOR I:=1 TO N DO
 S:= ' ' +S;
 END;
PROCEDURE CHUCHAY(S1: STR79; DONG: BYTE);
 VAR S2: STR79;
 STOP: BOOLEAN;
 BEGIN
 CANGIUA(S1);
 STOP:=FALSE;
 WHILE NOT(STOP) DO
 BEGIN
 GOTOXY(1,DONG);
 WRITE(S1);
 DELAY(100);
 CATDAN(S1, S2);
 S1:= S2;
 STOP: KEYPRESSED;
 END;
 END;
BEGIN
 WRITE('NHAP XAU CHU: ');
 READLN(S1);
 WRITE('NHAP DONG XUAT HIEN: ');
 READLN(DONG);
 CHUCHAY(S1, DONG);
 READLN
END.
3. Củng cố, luyện tập (3p)
- Nhắc lại cấu trúc sử dụng thủ tục và một số thao tác xử lý xâu:
PROCEDURE [];
[]
BEGIN
 	 []
END;
+ Một số thao tác xử lý xâu:
VAR : STRING [Độ dài lớn nhất của xâu];
COPY(S., vt, N)
LENGTH(S) 
4. Hướng dẫn học sinh tự học ở nhà (2p)
- Đọc trước TB và thực hành 7, giờ sau thực hành.
------------------------------------------------------
Tiết 44	Ngày dạy:B1:	,B2: 	 	 B3:	,B4:	 
	 B5:	,B6:	
	 B7:	,B8:	 
BÀI TẬP VÀ THỰC HÀNH 7
I. Mục tiêu
1. Kiến thức
- Tiếp tục củng cố cho học sinh những khái niệm về CTC: thủ tục, hàm, tham số hình thức, tham số thực sự, tham số giá trị, tham số biến, biến toàn bộ, biến cục bộ.
- Vận dụng kiến thức xây dựng được chương trình trên máy tính.
2. Kỹ năng 
- Rèn luyện cho học sinh kỹ năng lập trình giải quyết một số bài toán đơn giản liên quan đến tam giác khi biết toạ độ các đỉnh như: tính độ dài cạnh, tính chu vi, tính diện tích, kiểm tra các tình chất (đều, cân, vuông).
3. Thái độ 
- Tổ chức những hoạt động trong phòng máy để học sinh có được các kỹ năng cơ bản trong việc tổ chức và sử dụng CTC trong lập trình.
II. CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH	
1. Giáo viên: Sách giáo viên, sách giáo khoa, sách bài tập, giáo án.
2. Học sinh: Đồ dùng học tập, vở ghi, sgk, sách bài tập.
III. TIẾN TRÌNH TỔ CHỨC DẠY HỌC
1. Kiểm tra bài cũ 
- Kiểm tra kết hợp nội dung thực hành.
2. Bài mới
HOẠT ĐỘNG CỦA GV VÀ HS
NỘI DUNG
* Hoạt động 1: Tìm hiểu việc xây dựng hàm và thủ tục để xử lý các tính chất của tam giác (40p).
- GV: Đưa ra bài toán: Nhập toạ độ 3 đỉnh của 1 tam giác, tính diện tích, chu vi, hiển thị tính vuông, cân đều của tam giác.
- HS: Theo dõi đầu bài trong SGK.
- GV: Dẫn dắt, giải thích cho HS hiểu được ý nghĩa, dạng chương trình con, cách dùng các tham số (tham biến, tham trị), thứ tự khai báo, đầu vào, đầu ra của từng chương trình con được sử dụng để giải quyết bài toán trên.
- HS: Quan sát, nghe giảng, ghi bài.
- GV: Yêu cầu HS soạn chwong trình vào máy của mình, kiểm tra lỗi, chạy thử chương trình.
- HS Thực hành theo ND yêu cầu
a. Tìm hiểu việc xây dựng các hàm và thủ tục thực hiện tính độ dài các cạnh, chu vi, diện tích, kiểm tra các tính chất đều, cân vuông của tam giác được trình bày dưới đây.
+ Procedure daicanh(R: Tamgiac; var a,b,c: real);: Nhận đầu vào là biến R mô tả một tam giác và đầu ra là độ dài 3 cạnh a,b,c.
+ Function chuvi(var R: Tamgiac): real;: Cho giá trị là chu vi của tam giác R
+ Function dientich(var R: Tamgiac): real;: Cho giá trị là chu vi của tam giác R
+ Procedure tinhchat(var R: Tamgiac; var deu,can,vuong: boolean);: Nhận đầu vào là một biến R mô tả tam giác và đầu ra là tính chất của tám giác (đều, cân hoặc vuông)
+ Procedure hienthi(var R: Tamgiac);: Hiển thị toạ độ 3 đỉnh của tam giác trên màn hình
+ Funtion kh_cach(P,Q: Diem): real;: Cho giá trị là khoảng cách giữa hai điểm P, Q
b. Tìm hiểu chương trình nhập vào toạ độ ba đỉnhcủa một tam giác và sử dụng các hàm, thủ tục được xây dụng dưới đây để khảo sát các tính chất của tam giác.
3. Củng cố, luyện tập (3p)
- Nhắc lại cấu trúc sử dụng thủ tục và Hàm:
PROCEDURE [];
[]
BEGIN
 	 []
END;
FUNCTION []: ;
 []
BEGIN
 	 []
END;
4. Hướng dẫn học sinh tự học ở nhà (2p)
	- Đọc trước mục c của BT và thực hành 7, giờ sau thực hành tiếp.

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

  • docgiaoan11.doc