Kiến thức: Giúp học sinh: - 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ể.. 4.Ghi dữ liệu cho biến tệp5.Đóng tệp Hoạt độ
Trang 1GIÁO ÁN CHI TIẾT
Giáo viên hướng dẫn: Hà Nữ Thùy Hương Bộ môn: Tin học
Sinh viên thực tập: Huỳnh Văn Thắng
Tên bài giảng: Bài 16: Ví dụ làm việc với tệp
Tiết (theo chương trình): 37 Lớp: 11B8 Phòng: 14
Ngày giảng: 27/03/2013
I/ Mục đích, yêu cầu
1 Kiến thức:
Giúp học sinh:
- 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ể
- Biết một số hàm và thủ tục chuẩn làm việc với tệp
2 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ư:
1.Khai báo
2.Gán tên tệp cho biến tệp
3.Mở tệp
4.Đọc/ ghi dữ liệu cho biến tệp
5.Đóng tệp
3 Thái độ:
- Thấy được sự cần thiết và tiện lợi của kiểu dữ liệu tệp
- Có ý thức lưu trữ dữ liệu một cách khoa học
II/ Phương pháp, phương tiện
Nêu tình huống có vấn đề, đặt và giải quyết vấn đề, câu hỏi gợi mở,trình chiếu trực quan trên máy tính
III/ Nội dung
Hoạt động 1: Kiểm tra bài cũ ( 6’)
1/ Yêu cầu HS ghi lại danh sách các công việc và thủ tục để đọc dữ liệu
1.Khai báo
2.Gán tên tệp cho biến tệp
3.Mở tệp để đọc
4.Đọc dữ liệu cho biến tệp
5.Đóng tệp 2/ Yêu cầu HS ghi lại danh sách các công việc và thủ tục để ghi dữ liệu
1.Khai báo
2.Gán tên tệp cho biến tệp
3.Mở tệp để ghi
Trang 24.Ghi dữ liệu cho biến tệp
5.Đóng tệp
Hoạt động 2: Tìm hiểu ví dụ 1
Thời
gian Hoạt động của Giáo viên Tìm hiểu bài toánHoạt động của học sinh Nội dung ghi bảng
3’
GV: Yêu cầu 1 học sinh đọc nội
dung ví dụ 1
GV giải thích: 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
GV: Yêu cầu HS xác định cho input
và output của bài toán
HS: Đọc ví dụ 1
HS lắng nghe
HS suy nghĩ và trả lời
1 Ví dụ 1
- Xác định bài toán:
* 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
Tìm hiểu cách giải bài toán.
10’
GV: Vẽ minh họa về bài toán lên
bảng và yêu cầu HS nêu công thức
tính khoảng cách d
? Công thức tính khoảng cách d là
gì ?
GV:Vậy thì
? Vậy khi A(0,0) thì công thức tính
khoản cách trở thành như thế nào?
GV: 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:
HS: Suy nghĩ và trả lời
HS: Suy nghĩ và trả lời
d= (x2-x1)2 +(y2-y1)2
d= (x2-)2 +(y2-0)2 hay d= x2+y2
d= x2+y2
Trang 3khi hết tệp.
Trang 4Tìm hiểu chương trình
5’ - Quan sát chương trình trong sách trang 87 Cho biết các đoạn lệnh
sau thực hiện công việc gì ?
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
- Thảo luận
- Đ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
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
5’
Hoạt động 3: Xét ví bài tập tiếp theo.
Chiếu bài tập 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 định Input và output của bài
toán?
?Với yêu cầu bài toán thì chúng ta
cần khai báo những biến gì ?
?Em nào có ý tưởng để giải quyết
bài toán này không ?
Trường hợp học sinh không nêu
được ý tưởng bài toán
-Vì chúng ta đang thao tác trên
- Quan sát và ghi chép
- 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
- Biến tệp f, n
B1: Khai báo biến B2: Nhập n
B3 : Gán tệp sochan.txt cho biến tệp f
B4: Dùng thủ tục rewrite để mở tệp
B5: Nếu n mod 2 =0 thì Ghi n vào tệp
Bà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
- 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
Trang 5thì muốn ghi dữ liệu vào tệp thì ta
sử dụng thủ tục nào để mở tệp?
? Làm sao ta có thể kiểm tra được
n là số chẵn?
- Theo yêu cầu bài toán thì khi ta
kiểm tra n là số chẵn rồi thì việc
tiếp theo ta sẽ làm gì ?
- Khi chúng ta thao tác xong với
tệp thì ta làm công việc gì mà
không thể thiếu đặc biệt là việc ghi
dữ liệu
- Từ những gợi ý trên các em hãy
hoàn thành chương trình cho bài
toán này vào vở( bạn nào làm
nhanh thì có thể lấy điểm miệng)
- Giáo viên chiếu đoạn chương
trình cho học sinh xem và nhận xét
với bài mình làm
- Thủ tục rewrite
-N mod 2 =0 thì là số chẵn
- Ghi n vào tệp
- Đóng tệp
- Quan sát
var f: text;
n byte;
begin write('nhap so nguyenn:='); readln( n);
assign (f,'sochan.txt'); rewrite(f);
if n mod 2 = 0 then begin write(f,n);
write(' so vua nhap la so chan',n);
end;
Close(f);
readln;
end
Cho tên tệp so.txt
Nhập vào một một số nguyên n
kiểm tra xem số đó có phải là số
nguyên dương hay không Ghi kết
quả vào tệp so.txt
- Ghi chép vào vở Cho tên tệp so.txt
Nhập vào một một số nguyên
n kiểm tra xem số đó có phải
là số nguyên dương hay không Ghi kết quả vào tệp so.txt
Các em về tìm hiểu trước
Chương VI:Chương trình con và
lập trình có cấu trúc.
Bài 17: Chương trình con và
phân loại để tiết sau ta học.
- Lắng nghe
Hương Trà, ngày 23 tháng 03 năm 2013 Giáo viên hướng dẫn Sinh viên thực tập