Bài 13. Kiểu bản ghi

Chia sẻ bởi Nguyễn Duy Quang | Ngày 10/05/2019 | 73

Chia sẻ tài liệu: Bài 13. Kiểu bản ghi thuộc Tin học 11

Nội dung tài liệu:

chào mừng
các thầy cô về dự
Giáo viên giảng dạy: Đoàn Đức Chánh
Trường THPT H?i Lang
Kiểm tra bài cũ:
Hãy nêu các kiểu dữ liệu mà em đã học ?
Đáp án:
1. Kiểu dữ liệu chuẩn:
- Kiểu nguyên
- Kiểu thực
- Kiểu kí tự
- Kiểu lôgic
2. Kiểu dữ liệu có cấu trúc:
- Kiểu mảng
- Kiểu xâu
Bài
13
1. Giới thiệu về kiểu bản ghi :

Các em hãy quan sát và cho biết trên bảng có những thông tin gì ?

Bảng trên chứa thông tin của bao nhiêu đối tượng ?

Mỗi đối tượng được mô tả bằng một bản ghi (record).
Mỗi thuộc tính của đối tượng tương ứng với một trường của bản ghi.
Các trường khác nhau có thể có các kiểu dữ liệu khác nhau.

Đối với kiểu bản ghi, ngôn ngữ lập trình đưa ra quy tắc, cách thức xác định các thành phần nào ?

Ngôn ngữ lập trình đưa ra quy tắc, cách thức xác định:
- Tên kiểu bản ghi;
- Tên các thuộc tính (trường);
- Kiểu dữ liệu của mỗi trường;
- Cách khai báo biến;
- Cách tham chiếu đến trường;
2. Khai báo và tham chiếu:
a) Khai báo:

Để khai báo kiểu bản ghi ta cần phải khai báo những thông tin nào ?
- Các thông tin cần khai báo bao gồm:
- Kiểu bản ghi thường được định nghĩa như sau:
TYPE = RECORD
: ;
...........................................................
: ;
END;
VAR : ;
- Biến kiểu bản ghi được khai báo như sau:
tên kiểu bản ghi,
tên các
thuộc tính,
kiểu dữ liệu của mỗi thuộc tính.
TYPE = RECORD
: ;
...........................................................
: ;
END;
VAR : ;
- Ví dụ:
TYPE HS = RECORD
Hoten : STRING[30];
Ngaysinh : STRING[10];
Gioitinh : BOOLEAN;
Tin,Toan,Li,Hoa,Van,Su,Dia : REAL;
end;
VAR A : HS;
2. Khai báo và tham chiếu:
a) Khai báo:
type HS = record
Hoten : string[30];
Ngaysinh : string[10];
Gioitinh : boolean;
Tin, Toan, Li, Hoa, Van, Su, Dia : real;
end;
var LOP : array [1..50] of HS;
2. Khai báo và tham chiếu:
b) Tham chiếu:
- Để tham chiếu đến một trường của bản ghi :
. ;
2. Khai báo và tham chiếu:
b) Tham chiếu:
- Ta có khai báo sau:
type HS = record
Hoten : string[30];
Ngaysinh : string[10];
Gioitinh : boolean;
Tin,Toan,Li,Hoa,Van,Su,Dia : real;
end;
var A , B : HS;
LOP : array[1..50] of HS;
i: integer;
- Ví dụ:
A.Hoten
LOP[i].Hoten
A.Tin
LOP[i].Tin

Có mấy cách để gán giá trị cho biến bản ghi ?


Dùng lệnh gán trực tiếp: n?u 2 bi?n cựng ki?u.
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.
type HS = record
Hoten : string[30];
Ngaysinh : string[10];
Gioitinh : boolean;
Tin,Toan,Li,Hoa,Van,Su,Dia : real;
end;
var A , B : HS;
- Ví dụ: Ta có khai báo:
Cách 1:
Cách 2:
A := B;
A.Hoten := B.Hoten;
A.Tin := B.Tin;
3. Gán giá trị:
Readln(A.Tin);
A.Hoten := `Le Van An`;
A.Tin := 9;
2 cách
4. Ví dụ:
Viết chương trình giải quyết bài toán sau:
Một lớp gồm N (N ? 60) học sinh. Cần quản lý học sinh với các thuộc tính như: họ và tên, ngày sinh, địa chỉ, điểm toán, điểm văn, xếp loại. Giả sử việc xếp loại được xác định như sau:
- Nếu tổng điểm toán và văn lớn hơn hoặc bằng 18 thì xếp loại A.
- Nếu tổng điểm toán và văn lớn hơn hoặc bằng 14 và nhỏ hơn 18 thì xếp loại B.
- Nếu tổng điểm toán và văn lớn hơn hoặc bằng 10 và nhỏ hơn 14 thì xếp loại C.
- Nếu tổng điểm toán và văn nhỏ hơn 10 thì xếp loại D.

Sử dụng kiểu dữ liệu như thế nào để giải quyết bài toán ?

1. Giới thiệu về kiểu bản ghi:
2. Khai báo và tham chiếu:
Bài 13: Kiểu bản ghi
VAR : ;
TYPE = RECORD
: ;
...........................................................
: ;
END;
* Tham chiếu:
. ;
* Khai báo:
3. Gán giá trị:
- C1: Dùng lệnh gán trực tiếp.
- C2: Gán giá trị cho từng trường.
Dùng để mô tả các đối tượng có nhiều thuộc tính mà các thuộc tính có thể có các kiểu khác nhau
Để định nghĩa và khai báo kiểu bản ghi, ta sử dụng cú pháp:
A. Type = Record
: ;
........................................................
: ;
Var : ;
B. Var = Record
: ;
........................................................
: ;
Var : ;
C. Type = Record
: ;
.........................................................
: ;
End;
Var : ;
D. Const = Record
: ;
.........................................................
: ;
End;
Var : ;
C
Trong các khai báo sau, khai báo nào đúng ?
A. Type Hocsinh = Record
HoTen : string[30];
Ngaysinh : string[10];
SBD : integer;
End;
Var hs : Hocsinh;
A
B. Type Manghs : Record
HoTen : string[30];
Ngaysinh : string[10];
SBD : integer;
End;
Var hs : Manghs;
D. Type HSinh = Record
HoTen : string[30];
Ngaysinh : string[10];
SBD : integer;
Var hs = HSinh;
C. Type Hocsinh = Record;
HoTen : string[30];
Ngaysinh : string[10];
SBD : integer;
End;
Var hs : Hocsinh;
Viết chương trình giải quyết bài toán quản lý sau: Nhập họ và tên, điểm toán, điểm van của 30 học sinh trong lớp. In ra màn hình họ tên, điểm trung bình của 30 học sinh đó với DTB := (Toán + van)/2.
Xin chân thành cảm ơn sự quan tâm theo dõi của quý thầy cô !
Kính chuùc caùc thaày caùc coâ Maïnh khoeû - Haïnh phuùc
chúc các em học tập tốt
b) Nhập/xuất giá trị cho biến bản ghi:
- Để nhập/xuất giá trị cho biến bản ghi ta phải viết lệnh nhập hoặc xuất giá trị cho từng trường.
- Lệnh nhập giá trị:
- Lệnh xuất giá trị:
type HS = record
Hoten : string[30];
Ngaysinh : string[10];
Gioitinh : boolean;
Tin,Toan,Li,Hoa,Van,Su,Dia : real;
end;
var A , B : HS;
LOP : array[1..50] of HS;
i: integer;
Readln(A.Hoten);
Readln(LOP[i].Hoten);
Writeln(A.Hoten);
Writeln(LOP[i].Hoten);
3. Gán và nhập/xuất giá trị cho biến bản ghi:
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...

Người chia sẻ: Nguyễn Duy Quang
Dung lượng: | Lượt tài: 0
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)