1. Dùng kiểu dữ liệu
gì để lưu tên của
n học sinh?
Nguyễn Trung Hiếu
Dùng kiểu dữ liệu
gì để lưu tên của
một học sinh?
08/12/2012 GV: Phan Thị Ly 1
2. Giới Điểm Điểm Điểm Điểm Điểm Điểm Điểm
Họ và tên Ngày sinh
tính Tin Toán Lí Hoá Văn Sử Địa
Lê Thị Thuý Anh 2/11/1991 Nữ 9 10 7.5 8 8 7 8
Nguyễn Lê Hồng Anh 17/12/1991 Nữ 9.5 10 8 8 9 6 7
Phùng Đức 22/4/1991 Nam 8 8 9 8 7 7 6.5
………… …………….. …… ……… ……. ……. …….. …….. ……. ……
Kiểu xâu
Cóthể dùng mảngkiểuchiều để mô tả các đối
Kiểu
hoặc 2 Kiểu
xâu số
tượng học sinh trong bảng trên được không?
logic
Tại sao không thể mô tả các đối
tượng này bằng kiểu mảng 2
chiều?
08/12/2012 GV: Phan Thị Ly 2
5. Giới Điểm Điểm Điểm Điểm Điểm Điểm Điểm
Họ và tên Ngày sinh
tính Tin Toán Lí Hoá Văn Sử Địa
Lê Thị Thuý Anh 2/11/1991 Nữ 9 10 7.5 8 8 7 8
Nguyễn Lê Hồng Anh 17/12/1991 Nữ 9.5 10 8 8 9 6 7
Phùng Đức 22/4/1991 Nam 8 8 9 8 7 7 6.5
………… …………….. …… ……… ……. ……. …….. …….. ……. ……
Thuộc tính Thuộc tính Đối Thuộc tính
Họ tên Ngày sinh tượng Điểm văn
Có nhận xét gì về kiểu dữ liệu của
các thuộc tính trong bảng trên?
Kiểu bản ghi
08/12/2012 GV: Phan Thị Ly 5
6. Kiểu bản ghi là gì?
Kiểu bản ghi
(record) dùng để Đối tượng
Được Bản ghi
mô tả
mô tả các đối
tượng có cùng
các thuộc tính
(trường) mà các
Trường
thuộc tính này có Thuộc tính
thể có các kiểu
dữ liệu khác
nhau.
08/12/2012 GV: Phan Thị Ly 6
7. Ví dụ
Giới Điểm Điểm
Họ và tên Ngày sinh
tính Tin Toán
Nguyễn Thị Minh Huệ 12/12/1990 Nữ 9 10
Dương Trúc Lâm 2/11/1990 Nam 9.5 10
Đào văn Bình 5/12/1990 Nam 8 8
Quản lý đối tượng Xác định bản ghi
Tên ĐT Học Sinh Tên BG HOCSINH
TT 1 Họ và tên Trường 1 HoTen string[50]
TT 2 Ngày sinh Trường 2 NgaySinh string[10]
TT 3 Giới tính Trường 3 GioiTinh boolean
TT4 Điểm Tin Trường 4 DiemTin real
TT5 Điểm Toan Trường 5 DiemToan real
08/12/2012 GV: Phan Thị Ly 7
8. Giới Điểm Điểm
Họ và tên Ngày sinh
tính Tin Toán
Nguyễn Thị Minh Huệ 12/12/1990 Nữ 9 10
Dương Trúc Lâm 2/11/1990 Nam 9.5 10
Đào văn Bình 5/12/1990 Nam 8 8
Quản lí đối tượng Xác định bản ghi
Tên ĐT Học Sinh Tên bản ghi HOCSINH
TT 1 Họ và tên Trường 1 HoTen String[50]
TT 2 Ngày sinh Trường 2 NgaySinhString[10]
TT 3 Giới Tính Trường 3 GioiTinh boolean
TT4 Điểm Tin Trường 4 DiemTin real
TT5
08/12/2012 Điểm Toan Trường 5 DiemToan real 8
GV: Phan Thị Ly
10. type HocSinh = record
Định nghĩa (do người dùng định nghĩa màHoTen: string[30];
không có sẵn trong
Pascal): NgaySinh: string[10];
GioiTinh: boolean;
type = record DiemToan, DiemTin,
DiemVan, DiemSu, DiemDia,
<tên trường 1>: <kiểu trường 1>;
DiemLi, DiemHoa:real
……………………………………………….. end;
<tên trường k>: <kiểu trường k>;
end; // chỗ hay quên!!
Khai báo: var A : HocSinh
var
<tên biến bản ghi>: ;
08/12/2012 GV: Phan Thị Ly 10
12. Cú pháp lấy giá trị
A.HoTen tên của biến A ?
type HocSinh = record
HoTen: string[30];
NgaySinh: string[10];
GioiTinh: boolean;
DiemToan, DiemTin, DiemVan, DiemSu, DiemDia, DiemLi,
DiemHoa:real
end;
var A : HocSinh
08/12/2012 GV: Phan Thị Ly 12
14. Gán
giá trị
Cho từng Trực
trường tiếp
Lệnh Nhập từ A,B là 2 BBG
gán bàn phím cùng kiểu
A := B;
Readln (<biếnBG>.<trường>);
<biếnBG>.<trường> := <giá trị>;
08/12/2012 GV: Phan Thị Ly 14
15. Học sinh X có điểm môn toán là 8, Học sinh
Y có điểm môn toán bằng với X. Hãy gán
giá trị cho thuộc tính DemToan cua Y theo
cách gán giá trị cho từng trường
Lệnh gán
• Y.DiemToan=X.DiemToan
Nhập từ bàn phím
• Write(“Diem Toan”);
• Readln(Y.DiemToan);
08/12/2012 GV: Phan Thị Ly 15
16. Mảng HS[30]
VD: Khai báo
biến lưu thông HS[1] HS[2] … HS[39] HS[40]
tin 30 HS
Tên kiểu bản ghi: HS
HoTen NamSinh GioiTinh DiemToan DiemTin …
string[30] String[10] boolean real] real
const Max = 30;
type
HocSinh = record
HoTen: string[30];
NgaySinh: string[10];
GioiTinh: boolean;
DiemToan, DiemTin, DiemVan, DiemSu, DiemDia,
DiemLi, DiemHoa:real
end;
var A,B: HocSinh;
HS : array[1..Max] of HocSinh;
08/12/2012 GV: Phan Thị Ly 16
17. Mảng HS[30]
VD: Khai báo
biến lưu thông
tin 30 HS
Tên kiểu bản ghi: HS
const Max = 30;
type
HocSinh = record
HoTen: string[30];
NgaySinh: string[10];
GioiTinh: boolean;
DiemToan, DiemTin, DiemVan, DiemSu, DiemDia,
DiemLi, DiemHoa:real
end;
var A,B: HocSinh;
HS : array[1..Max] of HocSinh;
08/12/2012 GV: Phan Thị Ly 17