* Dữ liệu kiểu bản ghi record dùng để mô tả các đối tượng có cùng một thuộc tính mà các thuộc tính có thể có các kiểu dữ liệu khác Ví dụ: Bảng kết quả thi... * Dữ liệu kiểu bản ghi reco
Trang 11 Khai b¸o
2 G¸n gi¸ trÞ
…….
…….
Trang 2* Dữ liệu kiểu bản ghi (record) dùng để mô tả các đối tượng có cùng một thuộc tính mà các thuộc tính có thể có các kiểu dữ liệu khác
Ví dụ: Bảng kết quả thi
Trang 3* Dữ liệu kiểu bản ghi (record) dùng để mô tả các đối tượng có cùng một thuộc tính mà các thuộc tính có thể có các kiểu dữ liệu khác
Ví dụ: Bảng kết quả thi
Một
bản ghi
Mỗi bản ghi có nhiều thuộc tính, mỗi thuộc tính gọi
là một truờng
Trang 4Ngôn ngữ lập trình có các quy tắc, cách thức
cho phép xác định
• Tên các thuộc tính (trường)
• Tên kiểu bản ghi
• Kiểu dữ liệu của mỗi trường
• Các khai báo biến
• Cách tham chiếu trường
Trang 51 Khai báo:
Type <Tên kiểu bản ghi > = record
< Tên trường1>: < Kiểu trường1>;
…………
< tên trườngk>: <Kiểu trườngK>;
end;
Var <t ên biến bản ghi >: < tên kiểu bản ghi >
Do dữ liệu kiểu bản ghi thường dùng để mô tả nhiều đối tượng nên ta thường định nghĩa một kiểu bản ghi và sau đó dùng nó để khai báo các biến liên quan.
Trang 6Hoten Ngaysinh
Boolean
Gioitinh
Real
Tin
Real
Toan
String[10]
Real
Li
Real
Van
§Ó xö lÝ b¶ng kÕt
qu¶ thi nªu trªn ta cã
thÓ khai b¸o Lop lµ
biÕn m¶ng mét chiÒu
mçi phÇn tö lµ mét
b¶n ghi Hocsinh gåm
c¸c th«ng tin : hoten,
ngaysinh, gioitinh, vµ
®iÓm 4 m«n thi: Tin,
Toan, V¨n, Li
VÝ dô
Trang 7*Trong chương trình xử lí kết quả thi có thể sử dụng khai báo
Type
Gioitinh: Boolean;
Tin, Toan, Van, Li: real;
End.
Var
A,B: Hocsinh;
Trang 8*Trong chương trình xử lí kết quả thi có thể sử dụng khai báo
Type
Hocsinh = Record
Hoten: string[30];
Ngaysinh: string[10]
Gioitinh: Boolean;
Tin, Toan, Van, Li: real;
End.
Var
A,B: Hocsinh;
Lop: array [1 max] of Hocsinh;
Để tham chiếu đến
điểm Tin của học sinh A
ta viết
A.Tin
Trang 92 Gán giá trị
* Dùng lệnh gán trực tiếp:
Nếu A và B là hai biến bản ghi cùng kiểu thì ta có thể gán giá trị của biến B cho A bằng câu lệnh A:= B;
Có hai cách để gán giá trị cho biến bản ghi
* Gán giá trị cho từng trường: Có thể thực hiện bằng lệnh gán hoặc nhập từ bàn phím
Trang 10Bài tập1
Cỏc khai bỏo sau đõy đỳng hay sai?
a MangA:array [5 & ] of Real;
b MangB:Array [3.4 4.8] of Integer;
c MangC:Array [ -10 -6 ] of Integer;
d MangD:Array [10, 13] of Integer;
c Khai báo đúng
Hướng dẫn trả lời
a Khai báo sai vì & không phải là kiểu nguyên
b Khai báo sai vì kiểu chỉ số không phải là kiểu nguyên
Trang 11Bài tập 2
Hai cỏch khai bỏo sau cú tương đương với nhau khụng?
a
Type Mang = array[1 100] of integer;
Var A,B: mang;
b
Var A,B: array[1 100] of integer;
Hướng dẫn trả lời
Có tương đương nhau
Trang 12Tại sao phải khai báo kích thước của mảng?
Bài tập 3
Hướng dẫn trả lời
Để tránh gây lãng phí bộ nhớ