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 (548.06 KB, 13 trang )
<span class='text_page_counter'>(1)</span>Bµi 17. GIÁO VIÊN: NGUYỄN TRUNG KIÊN Gi¸o ¸n ®iÖn tö tin häc líp 11 Lop11.com.
<span class='text_page_counter'>(2)</span> 1. Vai trß kiÓu tÖp D÷ liÖu kiÓu tÖp ® îc lutr÷ 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ượngthông tin lưutrữ trên tệp có thể rÊt lín vµ chØ phô thuéc vµo dung lượngđĩa.. Lop11.com.
<span class='text_page_counter'>(3)</span> Có hai loại tệp thườngdùng:. Tệp định kiểu. TÖp v¨n b¶n. Lµ tÖp mµ c¸c phÇn tö cã cïng mét kiÓu. Sè lượngphần tử không xác định trước .. Gåm c¸c kÝ tù ® îc ph©n chia thµnh mét hoÆc nhiÒu dßng.. Dướiđây ta chỉ xét các khai báo và làm việc với tệp văn bản.. Lop11.com.
<span class='text_page_counter'>(4)</span> 2. Khai b¸o tÖp v¨n b¶n. Var <Tªn biÕn tÖp> : TEXT;. Program vd1; Uses crt; Var tep1,tep2: TEXT;. VÝ dô:. tep1,tep2 : Text;. Lop11.com.
<span class='text_page_counter'>(5)</span> 3. Thao t¸c víi tÖp G¸n tªn tÖp. Mở tệp để ghi. Mở tệp để đọc. §äc d÷ liÖu tõ tÖp. Ghi d÷ liÖu ra tÖp. §ãng tÖp. Lop11.com.
<span class='text_page_counter'>(6)</span> a. G¸n tªn tÖp ASSIGN(<biÕn tÖp>,<tªn tÖp>);. Tªn tÖp: Lµ biÕn x©u hoÆc h»ng x©u.. VÝ dô: ASSIGN(tep1, ‘DULIEU.DAT’); BiÕn tep1 ® îc g¾n víi tÖp cã tªn DULIEU.DAT. ASSIGN(tep2, ‘D:\TP\BAITAP.INP’); BiÕn tep2 ® îc g¾n víi tÖp cã tªn BAITAP.INP trong thmôc TP ở ổ đĩa D. Lop11.com.
<span class='text_page_counter'>(7)</span> b. Më tÖp Thủ tục mở tệp để ghi kết quả:. REWRITE (<biÕn tÖp>);. Program vd1; Uses crt; Var tep1,tep2: TEXT; BEGIN Clrscr;. NÕu nhtrªn æ D:\TP chacã tÖp BAITAP.INP, th× tÖp sÏ ® ợc tạo rỗng. Nếu đã có, thì nội dung cũ bị xoá để chuẩn bÞ ghi d÷ liÖu míi.. ASSIGN(tep2, ‘D:\TP\BAITAP.INP’); REWRITE (tep2);. Lop11.com.
<span class='text_page_counter'>(8)</span> c. Ghi d÷ liÖu ra tÖp Program vd1; Uses crt; Var tep2: TEXT; a,b: integer;. Thñ tôc ghi d÷ liÖu ra tÖp. WRITE(<biÕn tÖp>, <Danh s¸ch kÕt qu¶>);. WRITELN (<biÕn tÖp>, <Danh s¸ch kÕt qu¶>);. BEGIN Clrscr; ASSIGN(tep2, ‘D:\TP\BAITAP.INP’); REWRITE (tep2); a:=3; b:=5;. Danh s¸ch kÕt qu¶ gåm mét hay nhiÒu phÇn tö. PhÇn tö cã thÓ lµ biÕn, h»ng x©u hoÆc biÓu thøc.. WRITE (tep2,a,’ ‘,b); Close(tep2); Readln; END. Lop11.com.
<span class='text_page_counter'>(9)</span> Gi¸ trÞ hai biÕn a=3, b=5 ® îc ghi ë trong tÖp BAITAP.INP.. Lop11.com.
<span class='text_page_counter'>(10)</span> d. §äc d÷ liÖu tõ tÖp Thủ tục mở tệp để đọc dữ liệu RESET (<biÕn tÖp>);. Thủ tục đọc dữ liệu từ tệp:. Program vd2; Uses crt; Var tep2: TEXT; x1,y1: integer; BEGIN Clrscr; ASSIGN(tep2, ‘D:\TP\BAITAP.INP’);. READ(<biÕn tÖp>, <Danh s¸ch biÕn>);. RESET (tep2); READLN (tep2,x1,y1);. READLN (<biÕn tÖp>, <Danh s¸ch biÕn>);. WRITE (‘Hai so do la’ ,x1,y1); Danh s¸ch biÕn lµ mét hoặc nhiều biến đơn.. Close(tep2); Readln; END. Lop11.com.
<span class='text_page_counter'>(11)</span> e. Thủ tục đóng tệp. CLOSE(< tªn biÕn tÖp>). Ghi d÷ liÖu ra tÖp. §äc d÷ liÖu tõ tÖp. Program vd1; Uses crt; Var tep2: TEXT; a,b: integer;. Program vd2; Uses crt; Var tep2: TEXT; x1,y1: integer; BEGIN Clrscr;. BEGIN Clrscr; ASSIGN(tep2, ‘D:\TP\BAITAP.INP’);. ASSIGN(tep2, ‘D:\TP\BAITAP.INP’);. REWRITE (tep2);. RESET (tep2);. a:=3; b:=5;. READLN(tep2, x1,y1);. WRITE (tep2,a,b);. WRITE (‘Hai so do la’ ,x1,y1);. Close(tep2); Readln; END.. Close(tep2); Readln; END. Lop11.com.
<span class='text_page_counter'>(12)</span> f. Một số hàm chuẩn thườngdùng trong xử lí tệp văn bản. EOF(<biÕn tÖp>); Cho giá trị đúng nếu con trỏ đang chỉ tới cuối tệp. EOFLN(<biÕn tÖp>); Cho giá trị đúng nếu con trỏ đang chỉ tới cuối dòng.. Lop11.com.
<span class='text_page_counter'>(13)</span> H·y nhí! Khai b¸o tÖp v¨n b¶n: Var < Tªn biÕn tÖp>: Text;. G¸n tªn tÖp: ASSIGN(<tªn biÕn tÖp>);. Më tÖp: - Để đọc: RESET(<Tên biến tệp>); - §Ó ghi: REWRITE(< Tªn biÕn tÖp>);. §äc/ghi tÖp §äc: READ(<Tªn biÕn tÖp>, biÕn nhËn); Ghi: REWRITE(< Tªn biÕn tÖp>,biÕn ®ara);. §ãng tÖp CLOSE(< tªn biÕn tÖp>); Lop11.com.
<span class='text_page_counter'>(14)</span>