Tải bản đầy đủ (.pdf) (9 trang)

Tin Học 11 (soạn theo phương pháp mơi) 2018

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 (936.94 KB, 9 trang )

SỞ GIÁO DỤC VÀ ĐÀO TẠO
Trường THPT ĐỊNH QUÁN
--------------------------------

THÔNG TIN LIÊN HỆ
Họ và tên:
Trần Mạnh Hùng
Số ĐT liên hệ: 0933.088.891
Điểm

Đơn vị công tác: Trường THPT Định Quán
Email:
Nhận xét của Hội đồng Giám khảo

BÀI BÁO CÁO
Kết quả đợt tập huấn phương pháp dạy học theo nhóm và hướng dẫn học sinh tự học môn: Tin
Học 11
Tên chủ đề: Tiến trình dạy học bài 16: VÍ DỤ LÀM VIỆC VỚI TỆP (tiết 1)


Tên bài dạy:

BÀI 16: VÍ DỤ LÀM VIỆC VỚI TỆP

Chuẩn kiến thức kỹ, kỹ năng cần đạt của bài 16
Về kiến thức
Học sinh cần:
- Vận dụng các bước làm việc với tệp: gán tên cho biến tệp, mở tệp, đọc/ghi tệp,
đóng tệp vào các bài toán cụ thể.
- Hiểu một số hàm và thủ tục chuẩn làm việc với tệp.
Về kỹ năng


Hình thành kỹ năng về các thao tác cơ bản khi làm việc với tệp như:
- Khai báo
- Gán tên tệp cho biến
- Mở tệp
- Đọc/ghi dữ liệu cho biến tệp
- Đóng tệp
Về tư tưởng, tình cảm
- Học sinh hiểu bài và hứng thú với bài học
- Học sinh ngày càng say mê lập trình về cách làm việc với tệp
Phương pháp dạy học, phương tiện day học chủ yếu
- Dạy học theo quan điểm hoạt động
- Sử dụng máy chiếu, slide bài giảng, SGK, máy tính cài đặt môi trường lập trình để
minh họa, giấy khổ lớn và các bảng phụ.
A. KHỞI ĐỘNG
Hoạt động 1: kiểm tra bài cũ
(1) Mục tiêu: kiểm tra kiến thức của bài học trước về thao tác với tệp (var, assign,
rewrite, reset, close)
(2) Phương pháp/kĩ thuật: đàm thoại, vấn đáp.
(3) Hình thức tổ chức hoạt động: các nhân và nhóm.
(4) Phương tiện dạy học: SGK, máy tính, máy chiếu.
(5) Sản phẩm: học sinh phân tích được cách đọc, ghi vào dữ liệu tệp
Nội dung hoạt động
Hãy vẽ ra sơ đồ thao tác với tệp và giải thích sơ đồ đó, khi nào đọc/ghi dữ liệu từ tệp thì
cần sử dụng các thủ tục nào


VAR <Tên biến tệp> : text;

ASSIGN(<tên biến tệp>, <tên tệp>);
Ghi


Đọc

REWRITE(<Tên biến tệp>);

RESET(
WRITE(<Tên biến tệp>,<danh sách kết quả>);
WRITELN(<Tên biến tệp>,<danh sách kết quả>);

READ(<tên biến tệp>,<danh sách biến>);
READLN(<tên biến tệp>,biến>);

CLOSE(<Tên biến tệp>);
Hãy giải thích sơ đồ đó? Khi nào ta cần đọc/ghi tệp?


Hoạt động 2: Tìm hiểu ví dụ 1:
(1) Mục tiêu: Học sinh hiểu được nhu cầu sử dụng và ý nghĩa của cách đọc/ghi dữ liệu
tệp. Học sinh hiểu được 2 dạng khi nào cần đọc tệp và khi nào cần ghi tệp.
(2) Phương pháp dạy học: dạy học nêu vấn đề (learning problem posing)
(3) Hình thức tổ chức hoạt động: cá nhân và thảo luận nhóm.
(4) Phương tiện dạy học: SGK, máy tính, máy chiếu, các chương trình nguồn mẫu.
(5) Sản phẩm: học sinh được giao nhiệm vụ tiềm hiểu tình huốn phát sinh khi giải ví
dụ làm việc với tệp.
Nội dung hoạt động
Ví dụ 1: Một trường trung học phổ thông tổ chức cho giáo viên và học sinh của
trường đi cắm trại, sinh hoạt ngoài trời ở Suối Mơ. Để lên lịch đến thăm khu trại các
lớp, thầy hiệu trưởng cần biết khoảng cách từ trại của mình (ở vị trí tọa độ (0,0)) đến

trại của các giáo viên chủ nhiệm. Mỗi lớp có một khu trại, vị trí trại của mỗi giáo viên
chủ nhiệm đều có toại độ nguyên (x,y) được ghi trong tệp văn bản TRAI.TXT (như
vậy, tệp TRAI.TXT chứa liên tiếp các cặp số nguyên, các số cách nhau bởi dấu cách
và không kết thúc bằng kí tự xuống dòng).
(1) Hãy giải thích ví dụ trên?
(2) Hãy xác định Input và output của ví dụ trên?
(3) Nếu cho tọa độ của lớp như sau: 11a1 (1,1), 11a2(3,2) hãy vẽ minh họa cho ví dụ
trên?
(4) Hãy cho biết công thức tính khoảng cách của ví dụ trên dựa vào trại hiệu trưởng có
tọa độ (0,0) thì công thức thay đổi như thế nào?
(5) Hãy cho biết các tọa độ như (4) thì tệp trại chứa như thế nào? Mỗi lẫn đọc bao
nhiêu số
Giáo viên chính xác câu trả lời của HS như sau:
(1) Bài toán yêu cầu tính khoảng cách từ trại của thầy hiệu trưởng tọa độ (0,0) đến
trại của từng giáo viên chủ nhiệm tọa độ (x,y) được lưu liên tiếp trong tệp TRAI.TXT.
(2) * Input:
+ Tọa độ trại Hiệu trưởng O(0,0)
+ Tệp TRAI.TXT chứa các cặp số nguyên (x,y) liên tiếp.
* Output: Khoảng cách giữa trại mỗi lớp và trại thầy hiệu trưởng.
(3)
y
11a2

2
1

11a3
x

0


1

3


(4)
d=

(x2 - x1) 2  (y2 - y1) 2

khi A(0,0) thì công thức tính khoản cách trở thành như thế nào

-

d= (x2-) 2  (y2 - 0) 2 hay
d=

x2  y2

(5) Tức là trong bài toán này ta sẽ đọc từng cặp tọa độ (x, y) từ tệp TRAI.TXT sau đó
tính và in khoảng cách ra màn hình. Trong tệp TRAI.TXT sẽ chứa tất cả các tọa độ của
các trại (đặt cách nhau bởi dấu khoảng cách). Ví dụ tệp TRAI.TXT sẽ có dạng như sau:
1132
Giáo viên nhận xét
Công việc của ta là lặp lại việc đọc từng cặp tọa độ và tính khoảng cách của chúng tới tọa
độ (0,0) cho đến khi hết tệp.
B. HÌNH THÀNH KIẾN THỨC VÀ LUYỆN TẬP
Hoạt động 3: tìm hiểu thuật toán giải bài toán 1
(1) Mục tiêu: HS thực hiện được phần thuật toán thể hiện thao tác đọc dữ liệu từ tệp

vào chương trình.
(2) Phương pháp/kĩ thuật: Rèn tư duy phân tích và so sánh tương tự.
(3) Hình thức tổ chức hoạt động: cá nhân và thảo luận nhóm.
(4) Phương tiện dày học: SGK, máy tính, máy chiếu, phòng máy.
(5) Sản phẩm: HS tìm hiểu thuật toán đọc dữ liệu từ bộ nhớ ngoài vào chương trình để
từ đó hoàn chỉnh được thuận toán của ví dụ 2 SGK trang 88. (mức độ vận dụng
thấp)
NỘI DUNG HOẠT ĐỘNG
Dựa vào chương trình sau hãy cho biết các yêu cầu:
Program khoan_cach;
Var d: real;
f:text;
(1)
x,y: integer;
begin
assign(f,’trai.txt’); (2)


reset(f);(3)
while not eof (f) do (4)
begin
read(f,x,y); (5)
d:=sqrt(x*x + y*y); (6)
writeln(‘ khoan cach la’,d); (7)
end;
Close(f); (8)
End.
Yêu cầu: hãy cho biết Đoạn 1,2,3,4,5,6,7,8 thực hiện công việc gì?

Giáo viên chính xác câu trả lời của HS như sau:

- Đoạn (1) khai báo.
- Đoạn (2) gắn tên tệp ‘trai.txt’ cho biến tệp f.
- Đoạn (3) mở tệp để đọc.
- Đoạn (4) kiểm tra nếu chưa kết thúc tệp thì làm.
- Đoạn (5) đọc 2 biến x,y trong tệp f ra.
- Đoạn ( 6) tính khoản cách.
- Đoạn (7) in ra màn hình khoản cách.
- Đoạn (8) đóng tệp.
Giáo viên nhận xét
- Đây là một chương trình thực hiện đọc dữ liệu tệp từ bộ nhớ ngoài vào chương trình.
- Ngoài ra ta còn có những chương trình phải tự tạo ra tệp ở bộ nhớ ngoài và đọc dữ liệu
đó vào chương trình, phải thực hiện 2 thao tác là (đọc/ghi)
- Hiện nay đa số các kì thi học sinh giỏi về lập trình pascal đều thực hiện theo quy trình là
đọc một dữ liệu tệp đã có, từ đó từ những dữ liệu trong tệp đó hãy tính toán để đưa ra một
tệp kết quả ra bộ nhớ ngoài.
Hoạt động 4: Trả lời câu hỏi về tệp
(1) Mục tiêu: HS nắm được thủ tục đọc ghi tệp ở mức độ hiểu.
(2) Phương phác/Kĩ thuật: Rèn luyện tu duy phân tích tổng hợp.
(3) Hình thức tổ chức hoạt động: các nhân và thảo luận nhóm.
(4) Phương tiện dạy học: SGK, máy tính, máy chiếu và chương trình minh họa.
(5) Sản phẩm: học sinh trả lời được các phiếu câu hỏi về đọc/ghi tệp từ đó hiểu rõ
được ý nghĩa, hoạt động của tệp trong chương trình. (mức độ vận dụng)
Nội dung hoạt động
PHIẾU CÂU HỎI 1:
(1) Tại sao phải dùng câu lệnh mở tệp trước khi đọc/ghi tệp?
(2) Xét theo phương diện tổ chức dữ liệu hoặc theo phương diện truy cập thì tệp có
thể phân thành mấy loại? đó là những loại nào?
PHIẾU CÂU HỎI 2:



Cho biến tệp f và tên tệp là sochan.txt. Hãy nhập vào 1 số nguyên n. Nếu n là số chẵn thì
ghi vào tệp.In thông báo ra màn hình.
* Xác địn bài toán
Input: Nhập số nguyên.
Output: n là số chẵn thì ghi vào tệp sochan.txt và thông báo ra màn hình n là số chẵn.
Hãy hoàn thành chương trình sau:
* Chương trình
Var ……: text;
N :……;
begin
write('nhap so nguyen n:=');
readln(……);
assign (f,……..);
rewrite(f);
if ………= 0 then
begin
write(……,……….);
write(' so vua nhap la so chan',…….);
end;
………………….
readln;
end.
C. VẬN DỤNG
Hoạt động 5: lập trình giải bài toán ax2 + bx +c=0 (a<>0)
(1) Mục tiêu: HS nhận dạn được về cách đọc/ghi tệp thông qua một số chương trình
cụ thể, HS hiểu được thuật toán được cài đặt như thế nào thông qua câu lệnh (mức
độ vận dụng thấp)
(2) Phương pháp/Kĩ thuật: Rèn luyện tu duy phân tích tổng hợp.
(3) Hình thức tổ chức hoạt động: cá nhân và thảo luận nhóm.
(4) Phương tiện dạy học: SGK, máy tính, máy chiếu và chương trình minh họa.

(5) Sản phẩm: học sinh trả lời được các phiếu câu hỏi về chương trình dùng tệp để
giải quyết bài toán (mức độ vận dụng thấp)
Nội dung hoạt động
Viết chương trình đọc từng bộ 3 số thực a,b, c từ tệp ‘Input.txt’ sau đó giải và ghi kết quả
của ptb2: ax2 + bx +c = 0 (a≠0) xuống tệp ‘Output.txt’.


Mẫu tệp Input.txt

Mẫu tệp Output.txt

1 2 -1

x1= -1.00 x2= -1.00

-1 3 2

X1=0.56 x2=3.56

(1) Chương trình được viết như thế nào.
(2) Chương trình đã sử dụng những thủ tục nào của tệp?
(3) Cách viết chương trình đó đã được tối ưu chưa?
D. TÌM TÒI, MỞ RỘNG
Hoạt động 6: tìm hiểu các chương trình sửa dụng tệp ở các kì thi tin học.
(1) Mục tiêu: HS thực hiện được các hoạt động nhận dạng và thể hiện các thủ tục của
tệp trong các tình huống cụ thể.
(2) Phương pháp/kĩ thuật: đàm thoại, phát hiện.
(3) Hình thức tổ chức hoạt động: cá nhân và thảo luận nhóm.
(4) Phương tiện dạy học: SGK, máy tính, máy chiếu và bảng phị.
(5) Sản phẩm: học sinh trả lời được các câu hỏi về vện dụng các thủ tục tệp để giải

quyết tình huống cụ thể (mức độ vận dụng thấp và cao)
Nội dung hoạt động
Câu 1: chương trình sau đây sẽ ghi kết quả gì tệp văn bản BT1.TXT ?
Program VD_bt1_txt ;
Uses crt ;
Var f : text ;
Begin
Clrscr;
Assign(f, ‘BT1.TXT ’) ;
Rewrite(f) ;
Write(f, 123 + 456) ;
Close(f) ;
End .
Câu 2: Chương trình sau thực hiện như thế nào? Hãy giải thích từng câu lệnh?
Program Vi_Du ;
Uses crt ;
Var
f : text ;
ch : char ; tenfile : string[30] ;
Begin
Write(‘ Nhap ten file : ’) ; readln(tenfile) ;
Assign(f, tenfile) ; Reset(f) ;


While not eof(f) do
Begin
Read(f, ch) ;
Write(ch) ;
End ;
Close(f) ;

End.
Câu 3: chương trình sau đây có thực hiện được không? Nêu không được thì bị lỗi gì? Hãy
giải thích? Cách sửa lại như thế nào để chương trình hoạt động được?
Program Thi_Du ;
Uses crt ;
Const fi = ‘BT_TD’ ;
Var f : text ;
s : string ; t, l, h : integer ;
Begin
Assign(f, fi) ;
Reset(f) ;
While not seekeof(f) do
Begin
Readln(f, s, t, l, h) ;
Writeln(s, ‘ ’, t, ‘ ’, l, ‘ ’, h) ;
End ;
Close(f) ;
Readln
End.
E. HƯỚNG DẪN HỌC Ở NHÀ
(1) Ôn lại bài học hôm nay.
(2) Chuẩn bị trước ví dụ 2 (SGK trang 87) và một số câu hỏi trong sach BT

Người soạn

Trần Mạnh Hùng




×