Ly Thuong Kiet High School
Informatics 11
________________________
WELCOME TO MY CLASS!
teacher: Nguyễn Ngọc
Phú
mail:
11/23/2021
Tin học 11 - Chương 4 - Bài 11:Kiểu mảng
KHƠNG TÁM CHUYỆN
KHƠNG NĨI LEO
KHƠNG ĐIỆN THOẠI
Bài 14
Kiểu Dữ
1
Vai trò của kiểu tệp
Liệu Tệp
2
Phân loại tệp và thao
tác với tệp
Kể tên các kiểu dữ liệu đã học
•
•
•
•
•
•
Số ngun
Số thực
Kí tự
Logic
Mảng
Xâu
! Khi chạy chương trình,
dữ liệu này được lưu trữ
tạm thời trên bộ nhớ trong
(Ram)
*Nhắc lại khái niệm tệp trong tin học 10:
Tệp, còn gọi là tập tin(File), là một tập hợp các thông tin ghi trên bộ nhớ
ngoài, tạo thành 1 đơn vị lưu trữ do Hệ điều hành(HĐH) quản lí. mỗi tệp
có 1 tên để truy cập. (tên tệp được đặt theo quy định riêng của HĐH ).
Tên tệp ko quá 255 kí tự, thường gồm 2 phần : phần tên(name) và phần
mở rộng(cịn gọi là phần đi-Extension) và dc phân cách với nhau bằng
dấu chấm(.) Vdu: baigiang.doc, tinhoc.xls, hoten.txt…..
1 Vai trò của kiểu tệp
Đặc điểm:
- Dữ liệu kiểu tệp được lưu 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 thơng tin lưu trữ trên tệp có thể rất lớn và chỉ phụ thuộc
vào dung lượng đĩa.
So sánh
Các kiểu dữ liệu
Kiểu
dữ
liệu
tệp
( Integer, mảng, xâu,…)
- Dữ liệu lưu trữ thành file
- Được lưu trữ trên
RAM, không tạo ra file, trên bộ nhớ ngồi. Khơng
bị mất khi tắt máy.
mất đi khi tắt máy.
-Lượng dữ liệu lưu trữ
lớn
- Lượng dữ liệu lưu trữ lớn
2 Phân loại tệp và thao tác với tệp
Phân loại theo 2 cách
CÂU HỎI :
Chúng ta phân loại
tệp theo mấy cách ?
Và như thế nào ?
* Xét theo cách tổ chức dữ liệu :
• Tệp văn bản
• Tệp có cấu trúc
* Xét theo cách thức truy cập
• Tệp truy cập tuần tự
• Tệp truy cập trực tiếp
Lưu ý : Khác với mảng, số lượng phần tử của tệp không cần xác định
trước.
Phân loại tệp
Phân loại theo
cách tổ chức dữ liệu
Phân loại theo
cách thức truy cập
Tệp văn bản
Tệp có cấu trúc
Tệp truy cập
tuần tự
Tệp truy cập
trực tiếp
Dữ liệu được ghi
dưới dạng các kí
tự theo mã ASCII
Ví dụ: tài liệu,
giáo án, sách,…
Các thành phần
được tổ chức theo
một cấu trúc nhất
định.
Ví dụ: Dữ liệu âm
thanh, hình ảnh,..
Cho phép truy cập
dữ liệu bắt đầu từ
đầu tệp và đi qua
lần lượt tất cả các
dữ liệu trước nó.
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
CÂU HỎI :
Cách thức mà ngơn ngữ
lập trình cung cấp để có
thể thao tác với kiểu tệp ?
• Khai báo biến tệp
• Mở tệp
• Đọc/ghi dữ liệu
• Đóng tệp
Lưu ý: Chỉ xét với tệp văn bản trong Pascal
Bài 15:
Thao tác
với tệp
1
Khai báo
2
Thao tác với tệp
Khai báo
biến
Trong chương trình Pascal
khi chúng ta muốn dùng
một biến để chứa dữ liệu,
thì việc đầu tiên chúng ta sẽ
làm gì?
1. Khai báo:
CÂU HỎI :
VAR
tệp>: TEXT;
Cú pháp
khai báobiến
biến
tệp văn bản có dạng ?
Ví dụ 1: Khai báo biến tệp có
tên là f.
Var f : text;
Program vidu1;
Uses crt;
Var f : Text;
Cú pháp khai báo:
Nhóm 1
Var <tên biến tệp> : text;
Nhóm 2
Nhóm 3
Hãy khai báo
biến tệp tep1.
Hãy khai báo
2 biến tệp
phu1, phu2.
Hãy khai báo
3 biến tệp
tam1, tam2,
tam3.
Var tep1:text;
Var phu1, phu2:text;
Var tam1,tam2,tam3:text;
2 Thao tác với tệp
a Gắn tên tệp
Cú pháp:
ASSIGN (<biến tệp>,<tên tệp>);
Trong đó:
<tên tệp> là biến xâu hoặc hằng xâu.
< biến tệp> là biến sử dụng để tham chiếu
tới các phần tử của tệp
Ví dụ 1:
Giả thiết có biến xâu MYFILE và cần gán biến tệp F2 với tệp có tên
DULIEU.DAT. Việc gán tên tệp được thực hiện như sau :
MYFILE := ‘DULIEU.DAT ’;
ASSIGN (F2, MYFILE);
hoặc ASSIGN (F2, ‘DULIEU.DAT ’);
Ví dụ 2:
Để chuẩn bị thao tác với tệp có tên là INP.DAT trên thư mục gốc đĩa C: , ta
gắn nó với biếp tệp F3 như sau :
MYFILE : = ‘C:\INP.DAT’ ;
ASSIGN (F3, MYFILE);
Cú pháp:
Assign(<biến tệp>, <tên tệp>);
Nhóm 1
Nhóm 2
Nhóm 3
Viết thủ tục gắn
tệp BAITAP.DAT
cho biến tệp f.
Viết thủ tục gắn
tệp IN.DAT trên
thư mục gốc của
ổ đĩa D cho biến
tệp f.
Viết thủ tục gắn
tệp NHAP.TXT
trên thư mục gốc
của ổ đĩa E cho
biến tệp f.
Assign (f, ‘BAITAP.DAT’);
Assign (f, ‘D:\IN.DAT’);
Assign (f, ‘E:\NHAP.TXT’);
b
Mở tệp
Mở tệp để ghi
rewrite(<biến tệp>);
2 kiểu
Mở tệp để đọc
reset(<biến tệp>);
Trước khi mở tệp, biến tệp phải được gắn tên tệp bằng thủ tục assign.
Ví dụ:
Assign (f, ‘D:\KQ.DAT’);
Rewrite (f);
Ví dụ:
assign(tep2, ‘KQ.DAT’);
reset(tep2);
c
Đọc / Ghi tệp văn bản
Trong pascal, lệnh nào
dùng để đọc dữ liệu?
Lệnh nào dùng để ghi dữ
liệu?
Lệnh đọc là read
hoặc readln
Lệnh ghi là write
hoặc writeln
c
Đọc / Ghi tệp văn bản
Đọc tệp
văn bản:
read(<biến tệp>,<danh sách biến>);
readln(<biến tệp>,<danh sách biến>);
Danh sách biến là một hoặc nhiều tên biến. Trong trường hợp nhiều biến
thì các tên cách nhau bởi dấu phẩy.
Ví dụ 1:
Thủ tục đọc giá trị từ tệp gắn với biến tệp F1 và gán cho biến C :
READ (F1 , C)