intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài 15:TỆP VÀ XỬ LÍ TỆP

Chia sẻ: Paradise3 Paradise3 | Ngày: | Loại File: PDF | Số trang:8

104
lượt xem
5
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Học sinh nắm được về kiểu dữ liệu tệp: tệp định kiểu, tệp văn bản. - Học sinh thao tác xử lí được với kiểu dữ liệu tệp. 2. Về tư tưởng và tình cảm. - Nhấn mạnh nội dung kiến thức của bài học trước: khai báo tệp, xử lí tệp. - Giúp học sinh hiểu thêm kiểu dữ liệu tệp, giải được các bài toán liên quan tới kiểu dữ liệu tệp. Học sinh thêm hứng thú với bài học.

Chủ đề:
Lưu

Nội dung Text: Bài 15:TỆP VÀ XỬ LÍ TỆP

  1. Bài 15:TỆP VÀ XỬ LÍ TỆP A. Mục đích yêu cầu: 1. Về kiến thức : - Học sinh nắm được về kiểu dữ liệu tệp: tệp định kiểu, tệp văn bản. - Học sinh thao tác xử lí được với kiểu dữ liệu tệp. 2. Về tư tưởng và tình cảm. - Nhấn mạnh nội dung kiến thức của bài học trước: khai báo tệp, xử lí tệp. - Giúp học sinh hiểu thêm kiểu dữ liệu tệp, giải được các bài toán liên quan tới kiểu dữ liệu tệp. Học sinh thêm hứng thú với bài học. B. Phương pháp, phương tiện. 1.Phương pháp: - Kết hợp các phương pháp giảng dạy: thuyết trình, vấn đáp, hướng dẫn,giải thích,trình chiếu... 2. Phương tiện dạy học: - Sách giáo khoa lớp 11. - Sách tham khảo (nếu có). - Vở ghi lí thuyết. C. Tiến trình lên lớp, nội dung bài giảng. I. Ổn định lớp(1'). - Yêu cầu lớp trưởng báo cáo sĩ số. II. Kiểm tra bài cũ và gợi động cơ (5').
  2. -Tóm tắt nội dung bài học hô m trước: Bài học hôm trước chúng ta đã được làm quen với kiểu dữ liệu tệp. Các em đã biết cách khai báo một biến tệp và các thao tác với với tệp: gán tên tệp, mở tệp, vào ra dữ liệu, đóng tệp... - Câu hỏi kiểm tra bài cũ : + Cho biết sự khác biệt giữa tệp định kiểu và tệp văn bản? + Các câu lệnh, các hàm và thủ tục khi thao tác với tệp? => Các thao tác với tệp: - Giới thiệu nội dung bài học: Sau đây, chúng ta sẽ vận dụng các kiến thức đã học từ bài học trước để đi làm một vài ví dụ về tệp định kiểu và tìm hiểu về cách đọc và ghi với tệp văn bản. III. Nội dung bài giảng. Nội dung Hoạt động của thầy và trò TT T.gian - VD1: Chương trình nhập từ bàn phím -Hỏi:Cách khai báo biến tệp? 1 7' số học sinh của một lớp và kết của kiểm Thuyết trình: tra môn tin học của các học sinh trong + Phần tử của tệp là một bản ghi: lớp. Ghi kết quả ra tệp KQ.DAT, mỗi Tyte Banghi= record
  3. phần tử của tệp là một bản ghi bao hoten : string[28]; gồmhọ và tên (xâu không quá 28 kí tự) diem : byte; và điểm môn tin học (kiểu BYTE). end; -Chương trình: var bg: Banghi; + Biến tệp: Program KQ_Tin; Uses Crt; F : file of Banghi; - assign(f,tentep): gán tên tệp là Tyte Banghi = record KQ.DAT cho biến tệp f. hoten : string[28]; - rewrite(f): Mở tệp f để ghi, nếu diem : byte; chưa có thì sẽ được tạo, còn có end; rồi thì nội dung sẽ bị xoá. var bg: Banghi; - write(f,bg): ghi giá trị của biến f : file of Banghi; bg vào tệp f n,i : Intrger; tentep : string [10]; - Chú ý: close(f): sau khi ghi xong thì nhớ phải đóng tệp. BEGIN Clrscr; write(' So hoc sinh: "); readln(n); tentep:= 'KQ.DAT'; assign(f,tentep); rewrite(f); For i:=1 to n do Begin write('Ho va ten: '); readln(bg.hoten); write('Diem : '); readln(bg.diem); write(f,bg); end; close(f); END. - VD2: Chương trình đọc tệp KQ.DAT -Hỏi: cách khai báo? giống VD1. 6' 2 ở VD1, tính và đưa ra màn hình điểm Thuyết trình: trung bình môn Tin học của lớp (chính - assign(f,tentep): gán tên tệp là xác đến chữ số thập thứ nhất) . KQ.DAT cho biến tệp f. - Chuơng trình: - reset(f): đọc dữ liệu từ tệp f - not eof(f): Khi con trỏ tệp chưa Program Vidu2; trỏ tới cuối tệp Uses crt; - Chú ý: close(f): sau khi đọc Tyte Banghi = record xong thì nhớ phải đóng tệp. hoten : string[28];
  4. diem : byte; end; var bg: Banghi; f : file of Banghi; n,tg : Intrger; tentep : string [10]; dtb : real; BEGIN Clrscr; n := 0; tg := 0; tentep := 'KQ.DAT'; assign(f.tentep); reset(f); while not eof(f) do Begin read(f,bg); tg := tg +bg.diem; n := n + 1; end; dtb := tg/n; writeln(' diem trung binh cua lop: ',dtb:4:1); close(f); END. - Danh sách biến: là một hoặc 3 - Đọc/ghi tệp văn bản: + Thủ tục đọc có dạng: nhiều biến, trong trường hợp read(,); nhau bởi dấu phẩy. - Danh sách kết quả: gồm một hoặc: readln(,) hợp nhiều phần tử thì các phần + Thủ tục ghi có dạng: tử cách nhau bởi dấu phẩy. Phần 5' Write(,
  5. sách kết quả>) (số học ,quan hệ, logic) hoặc Hoặc: hằng xâu. Write(,) VD1: Giả thiết cho chương trình có khai Thuyết trình: 4 3' - FA,FB: tên biến tệp văn bản. báo: - A,B,C: các biến. var FA,FB : Text; và tệp FA mở để đọc, còn tệp FB mở để =>Các biến có thể khác kiểu. ghi. Khi đó: + Có thể có các thủ tục đọc tệp như sau: read (FA,A,B,C); hoặc: readln (FA,A,B,C); + Có thể có các thủ tục ghi tệp như sau: write(FB,'A=',A,'B=',B,'C=',C); hoặc writeln(FB,'A=',A,'B=',B,'C=',C); - VD2: Xét đường khép kín không tự cắt Thuyết trình: 5 6' N đỉnh trong mặt phẳng, các cạnh song - readln(n): nhập n từ bàn phím. song với trục toạ độ và các đỉnh có tạo - assign(f,tf): gán tên tệp là độ nghiêng. "GAPKHUC.INP" cho biến tệp - Chương trình thực hiện: Nhập từ bàn f. phím số N, toạ độ các đỉnh liên tiếp của - rewrite(f): mở tệp f ra để ghi. đường gấp khúc và ghi toạ độ các đỉnh - readln(x,y): toạ độ x,y của các ra tệp văn bản GAPKHUC.INP, mỗi đỉnh nhập từ bàn phím. dòng chứa 2 số nguyên là toạ độ một - writeln(f,x,' ',y): ghi vào file f
  6. đỉnh. Các số trên một dòng cách nhau toạ độ x,y của các đỉnh. một dấu cách. -Chú ý close(f): đóng tệp. - Chương trình: *(Lần lượt vừa hỏi vừa giải thích các lệnh trong chương trình). Program gapkhuc; Uses crt; var f : text; i,n,x,y : integer; tf : string[80]; Begin clrscr; write("n = "); readln(n); tf := 'GAPKHUC.INP'; assign(f,tf); rewrite(f); For i := 1 to n do Begin write(' x,y : ' ); readln(x,y); writeln(f,x,' ',y); end; close(f); end. - VD3: Chương trình đọc tệp dữ liệu của Hỏi: Em hãy giải thích các lệnh 6 8' VD2 chứa ở tệp "GAPKHUC.INP", tính trong chương trình? chu vi hình giới hạn bởi đường gấp khúc Thuyết trình: và đưa kết quả ra tệp văn bản - assign(fa,'GAPKHUC.INP'): gán tên tệp 'GAPKHUC.INP' "GAPKHUC.OUT". - Chương trình: cho biến tệp fa. - reset(fa): mở tệp fa để đọc Program VD3; - readln(fa,x,y): đọc từ tệp fa toạ Uses crt; độ x,y của đỉnh. var fa,fb : text;
  7. - not eof(fa): Khi con trỏ tệp l : longint; chưa trỏ tới cuối tệp. x0,y0,x1,y1,x,y : integer; Begin - assgin(fb,GAPKHUC.OUT''); rewrite(fb): gán tên tệp clrscr; 'GAPKHUC.OUT' cho biến tệp assign(fa,'GAPKHUC.INP'); reset(fa); fb readln(fa,x,y); - writeln(fb,'chu vi: ',l): ghi vào tệp fb biến l. x0 := x; y0 := y; l := 0; while not eof(fa) do -Chú ý: close(fa), close(fb): sau khi đọc xong thì nhớ phải đóng begin tệp. x1 := x; y1 := y; readln(fa,x,y); l := l + abs(x-x1)+ abs(y-y1); end; l := l + abs(x-x0) +abs(y-y0); close(fa); assgin(fb,GAPKHUC.OUT''); rewrite(fb); writeln(fb,'chu vi: ',l); close(fb); end. IV. Củng cố bài:(2’) Hô m nay, chúng ta đã đi làm một vài ví dụ về tệp định kiểu và tìm hiểu về cách đọc và ghi với tệp văn bản. =>Chúng ta cần nắm vững các thao tác xử lí đối với kiểu dữ liệu tệp, đặc biệt là cách đọc và ghi hai loại tệp: tệp định kiểu và tệp văn bản. V. Bài tập về nhà(1’) - Làm bài tập 4 và 5 sách giáo khoa. - Tóm tắt kiểu dữ liệu tệp. - Nghiên cứu nội dung bài tiếp theo (chương mới). VI. Nhận xét và rút kinh nghiệm giờ giảng(1’) …………………………………………………………………………….. …………………………………………………………………………….. ……………………………………………………………………………..
  8. …………………………………………………………………………….. ………………………………………………….
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
10=>1