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

Chia sẻ bởi Bùi Gia Vinh | Ngày 10/05/2019 | 152

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:

Môn: Tin học
Giáo viên giảng dạy: Nguyễn Thanh Bắc
Trường THPT BC Ph?m Quang Th?m
giáo viên dạy giỏi chương trình, sgk lớp 11 - tỉnh thái bình
H?I GI?NG
Kiểm tra bài cũ:
Hãy nêu cấu trúc của thủ tục chuẩn nhập dữ liệu vào từ bàn phím ?
Câu 1:
Hãy nêu cấu trúc của thủ tục chuẩn đưa dữ liệu ra màn hình ?
Câu 2:
Hãy nêu các kiểu dữ liệu mà em đã học ?
Câu 3:
Đáp án:
Read();
hoặc:
Readln();
Đáp án:
Write();
hoặc:
Writeln();
Đá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
Để mô tả các đối tượng như trên, ngôn ngữ lập trình cho phép ta xác định kiểu bản ghi.
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.
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 ?

Các trường khác nhau có thể có các kiểu dữ liệu khác nhau.
Bảng kết quả thi
Mỗi đối tượng được mô tả bằng một bản ghi.
1. Giới thiệu về kiểu bản ghi:

Đố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 đượ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.
2. Khai báo và tham chiếu:
a) Khai báo:
Để giải quyết bài toán trên ta có thể khai báo LOP là một mảng một chiều,
c?a m?ng l� m?t b?n ghi HS,
m?i b?n ghi HS g?m các thông tin:
Hoten,
Ngaysinh,
Gioitinh
v� di?m 7 môn thi: Tin, Toan, Li, Hoa, Van, Su, Dia.
m?i ph?n t?
type = record
: ;
...........................................................
: ;
end;
var : ;
Bảng kết quả thi
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;
Bảng kết quả thi
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;
- Để tham chiếu đến một trường của bản ghi ta thực hiện theo cú pháp sau:
. ;
- Ví dụ:
A.Hoten
LOP[i].Hoten
A.Tin
LOP[i].Tin
a) Gán giá trị:

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

- Có 2 cách:
Dùng lệnh gán trực tiếp.
Gán giá trị cho từng trường.
type HS = record
Hoten : string[30];
Ngaysinh : string[10];
Gioitinh : boolean;
Tin,Toan,Li,Hoa,Van,Su,Dia : real;
end;
var A , B : HS;
- Ta có khai báo:
Cách 1:
Cách 2:
A := B;
A.Hoten := B.Hoten;
A.Hoten := `Dao Van Binh`;
Lưu ý:
Chỉ được dùng lệnh gán trực tiếp khi hai biến bản ghi có cùng kiểu.
3. Gán và nhập/xuất giá trị cho biến bản ghi:
A.Tin := 7.5;
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:
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 ?

4. Ví dụ:
Các bước để giải bài toán trên:
Bước 1: Tạo kiểu dữ liệu, khai báo biến.
Bước 2: Nhập dữ liệu cho mảng bản ghi.
Bước 3: Tính tổng điểm toán và văn.
Dựa vào tổng điểm để xếp loại.
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 và nhập/xuất giá trị cho
biến bản ghi:
* Gán giá trị:
* Nhập/xuất giá trị cho biến bản ghi:
- C1: Dùng lệnh gán trực tiếp.
- C2: Gán giá trị cho từng trường.
- Nhập: Readln();
- Xuất: Writeln();
Để đị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. Type : 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 lý 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 + Lý)/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
* 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ẻ: Bùi Gia Vinh
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)