1. Trang chủ
  2. » Giáo án - Bài giảng

cac thao tac voi tep

4 1,1K 2

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 4
Dung lượng 50 KB

Nội dung

Kiến thức - Học sinh biết đợc vai trò của kiểu dữ liệu tệp - Học sinh biết đợc có 2 cách phân loại tệp.. - Học sinh biết khai báo biến tệp và thao tác cơ bản với tệp văn bản 2.. Nội dung

Trang 1

Chơng V Tệp và thao tác với tệp Bài 14+15: Kiểu dữ liệu tệp và thao tác với tệp

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

1 Kiến thức

- Học sinh biết đợc vai trò của kiểu dữ liệu tệp

- Học sinh biết đợc có 2 cách phân loại tệp

- Học sinh biết khai báo biến tệp và thao tác cơ bản với tệp văn bản

2 Kỹ năng

Dần dần hình thành kỹ năng về thao tác với tệp văn bản

3 Thái độ

- Rèn luyện cho học sinh có ý thức lu trữ dữ liệu một cách khoa học, phòng chống mất mát thông tin hoặc nhiễm vi rút

II Phơng pháp, dụng cụ

- Sử dụng thuyết trình, giảng giải, gợi ý nêu vấn đề

- Dùng bảng in sẵn hinhg 16 SHK và chuẩn bị máy chiếu

III Nội dung

Nội dung - Hoạt động của giáo viên Hoạt động của học sinh

HĐ1: Đặt vấn đề

Trong các giờ thực hành đã học, sau khi chạy chơng

trình ta thấy kết quả in trên màn hình, tuy nhiên

muốn sử dụng kết quả đó về sau thì không đợc (nó

không lu trữ lâu dài đợc) Để khắc phục nhợc điểm

đó ta nghiên cứu dữ liệu kiểu tệp

1 Vai trò của tệp

C_hỏi: Trong máy tính có những loại bộ nhớ nào ?

loại bộ nhớ nào không bị mất dữ liệu khi tắt máy ?

C_hỏi 2: Vậy theo em thì có các kiểu dữ liệu đã học

đợc lu trữ ở bộ nhớ nào ?

C-Hỏi 3: Bộ nhớ trong hay bộ nhớ ngoài có dung

l-ợng lớn hơn ?

Gv: Chốt lại:

Dữ liệu kiểu tệp đợc lu trữ lâu dài ở bộ nhớ ngoài

(Đĩa từ, CD, và không bị mất khi tắt nguồn điện

Lợng dữ liệu lu trữ dữ liệu trên tệp có thể rất lớn và

chỉ phụ thuộc vào dung lợng đĩa

2 Phân loại tệp và thao tác với tệp

Gv: Giới thiệu cho học sinh có 2 loại tệp ( không

đòi hỏi học sinh hiểu cặn kẽ 2 loại tệp)

- Theo cách tổ chức dữ liệu:

Tệp văn bản là tệp đợc ghi dới dạng các kí tự

theo bảng mã ASCII Trong tệp văn bản dãy kí tự

kết thúc bởi kí tự xuống dòng hay kí tự kết thúc tệp

tạo thành một dòng.

Tệp dữ liệu có cấu trúc là tệp mà các thành phần

của nó đợc tổ chức theo một cấu trúc nhất định.

- Theo cách thức truy cập

Tệp truy cập tuần tự: Bằng cách đi từ đầu tệp và đi

qua lần lợt các dữ liệu đến vị trí cần truy cập.

Tệp truy cập trực tiếp: Cho phép tham chiếu đến dữ

liệu cần truy cập bằng cách xác định trực tiếp vị trí

của dữ liệu đó.

GV Có 2 thao tác cơ bản đối với tệp là đọc và ghi

dữ liệu ta xem xét trong ngôn ngữ lập trình Pascal

các thao tác đó đựơc thể hiện nh thế nào đối với tệp

văn bản ?

3 Khai báo:

Khai báo biến tệp văn bản có dạng

HS: Chú y nghe giảng

Hs Trả lời

Tệp dữ liệu dạng văn bản xuất hiện ở dạng ở đâu ?

Ví dụ: Tệp hình ảnh, âm thanh…

Học sinh lấy ví dụ minh hoạ

Trang 2

Var <tên biến tệp> : Text;

Vd: Var tep1,tep2:text;

4 Thao tác với tệp

a Gắn tên tệp.

Gv: Giải thích cho học sinh tại sao phải gắn tên tệp

cho biến tệp, rồi đa ra thủ tục

Để truy cập đến tệp ta thông qua tên tệp Tên tệp là

biến xâu hoặc hằng xâu ví dụ: 'Dulieu.dat'

Trong lập trình ta không thao tác trực tiếp trên tệp

mà thông qua biến tệp Biến tệp đợc NNLT sử dụng

làm đại diện cho tệp

Do vậy để thao tác với tệp trớc hết ta phải gắn tên

tệp cho biến tệp bằng thủ tục

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

Trong đó: Biến tệp là biến đợc khai báo ở mục 3

Tên tệp là biến xâu hoặc hằng xâu

Ví dụ: tên tệp:='Kq.txt'

Tên tệp:='C:\TP\BaiTap\dulieu.int'

Ví dụ gắn tên tệp vào biến:

Assign(tep1,'kq.txt');

assign(tep2,'C;\Tp\baitap\dulieu.int');

b.Mở tệp

Xét 2 tình huống: em cần mở mở tin học ra: Mở ra

để đọc và mở ra để ghi

Thủ tục mở tệp để ghi dữ liệu:

Rewrite(<biến tệp>); {mở ra để ghi dữ liệu vào}

Khi gọi thủ tục này thì tệp cha có tên thì tệp sẽ đợc

tạo ra với nội dung rỗng còn nếu đã có tên thì nội

dung cũ sẽ bị xoá và chuẩn bị ghi dữ liệu mới

ví dụ: assign(tep1,'kq.txt');

Rewrite(tep1);

Thủ tục mở tệp để đọc dữ liệu

Reset(<biến tệp>); {mở ra để đọc dữ liệu vào}

ví dụ

assign(<tep2,'c:\tp\baitap\dulieu.int');

reset(tep2);

Nhấn mạnh trớc khi sử dụng 2 thủ tục trên ta phải

gắn tên tệp cho biến tệp đồng thời biến tệp phải đợc

khai báo từ trớc

c Đọc, ghi tệp văn bản

Gv: Để nhập dữ liệu từ bàn phím và để in dữ liệu

lên màn hình ta dùng thủ tục gì ?

Gv: Giới thiệu các thủ tục đọc dữ liệu từ tệp và ghi

dữ liệu vào tệp

Thủ tục đọc dữ liệu từ tệp:

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

Hoặc

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

Ghi dữ liệu và tệp:

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

Hoặc

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

Ví dụ ta khai báo nh sau:

Var tep1, tep2:text;

begin

assign(tep1,'Dulieu.int');

reset(tep1);

assign(tep2,'Dulieu.out');

rewrite(tep2);

{ có thủ tục đọc tệp: tep1 và ghi tệp: tep2 nh sau:}

read(tep1,a,b);

Học sinh chú ý nghe và ghi

Hs tự đa ra cách khai báo tên tệp

Nếu học sinh khá giỏi ta có thểt

đa thêm lệnh {$I-} trớc lệnh Reset(bien tệp);

Hàm IoResult =0 nếu mở thành công và khác 0 nếu có tệp tồn tại Tơng tự với lệnh Rewrite

Học sinh ghi chép

Học sinh tự lấy ví dụ

Hs trả lời câu hỏi

Hs ghi và trả lời sự khác nhau giữa thủ tục nhập vào từ bản phím và thủ tục nhập, và ghi dữ liệu vào tệp

Trang 3

write(tep2,c,d);

writeln(tep2,a,c,(-b+sqrt(delta))/(2*a):5:2);

* Một số hàm thờng dùng đối với tệp văn bản

Hàm eof(<biến tệp>);

Trả về kết quả true khi cuối tệp và ngợc lại

Hàm eoln(<biến tệp>);

Trả và kết quả true khi con trỏ văn bản đang ở cuối

dòng

d Đóng tệp

Đa ra lý do phải đóng tệp

Vì khi không đóng tệp với việc ghi dữ liệu sẽ không

tồn tại dữ liệu ở trong tệp

Câu lệnh : Close(<biến tệp>);

ví dụ:

Close(tep1);

Close(tep2);

IV Củng cố

- Gọi học sinh khái quát lại vai trò của tệp và phân loại tệp

- Học sinh khái quát lại các thao tác phải thực hiện đọc và ghi dữ liệu từ tệp

- Cho học sinh làm một số bài tập trắc nghiệm khách quan

Trang 4

Hãy khoanh tròn vào đáp đúng trong những câu hỏi sau: Câu 1: Để gán tệp cho biến tệp ta dùng thủ tục

a assign(<Tên tệp>,<biến tệp>); b assign(<biến tệp>,<tên tệp>);

c assign(<biến tệp>;<tên tệp>); b assign(<Tên tệp>.<biến tệp>);

Câu 2: Sau khi gán tên tệp cho biến tệp ta mở tệp để ghi dữ liệu vào tệp ta dùng thủ tục:

a Reset(<biến tệp>); b Reset(<tên tệp>);

c Rewrite(<biến tệp>); d Rewrite(<tên tệp>);

Câu 3: Để đọc dữ liệu từ tệp ra biến ta dùng thủ tục

a Read(<tên tệp>,<danh sách biến>); b Read(<biến tệp>,<danh sách biến>);

c Write(<biến tệp>,<danh sách biến>); d writeln(<biến tệp>,<danh sách biến>);

Câu4: Dữ liệu kiểu tệp đợc lu trữ

Câu 5 Trong Pascal để khai báo biến tệp văn bản ta sử dụng cú pháp

a Var < Tên tệp>: Text; b Var <tên tệp> : String;

c Var < Tên biến tệp>: Text; c Var < tên biến tệp> : String;

Câu6: Để thao tác với tệp

a Ta có thể gán tên tệp cho biến tệp, hoặc sử dụng trực tiếp tên tệp cũng đợc

b Ta nhất thiết phải gán tên tệp cho tên biến tệp

c Ta sử dụng trực tiếp tên tệp trong chơng trình

d Ta nhất thiết phải sử dụng trực tiếp tên tệp trong chơng trình

Ngày đăng: 02/07/2014, 17:00

TỪ KHÓA LIÊN QUAN

w