Kĩ năng: - Biết cách khai báo bản ghi, truy cập trờng của bản ghi.. Bài mới: *Hoạt động 1: Trình bày khái niệm kiểu bản ghi trong ngôn ngữ lập trình.. * Một số khái niệm: - Kiểu bản ghi
Trang 1Tuần :
Tiết : 33 Ngày soạn: Ngày giảng:
Bài 13: Kiểu bản ghi
I mục tiêu của bài:
1 Kiến thức:
- Biết khái niệm kiểu bản ghi
2 Kĩ năng:
- Biết cách khai báo bản ghi, truy cập trờng của bản ghi
3 Thái độ:
II Chuẩn bị của Giáo viên và học sinh:
1 Giáo viên: SGK, giáo án, STK ( máy chiếu nếu có)
2 Học sinh: SGK, chuẩn bị trớc bài ở nhà
III Phơng pháp giảng dạy
- Thuyết trình, vấn đáp
IV Tiến trình bài học và các hoạt động:
1 ổn định tổ chức: 1’
2 Kiểm tra bài cũ:
Em hãy điền vào chỗ trống ( ) trong bảng sau:
‘Xuan tren cao nguyen’ Insert( ,st, ); ‘Xuan da ve tren cao nguyen’
3 Bài mới:
*Hoạt động 1: Trình bày khái niệm kiểu bản ghi trong ngôn ngữ lập trình.
- GV: Đặt vấn đề:
* Xét ví dụ sau:
+ Viết chơng trình dùng để quản lí các thi
sinh của một kì thi
+ Chơng trình cần quản lí đợc:
+ SBD của thí sinh
+ Họ tên thhí sinh
+ Giới tính
+ Điểm các môn
Vậy làm thế nào để quản lí toàn bộ thông
tin trên? Mỗi thông tin trên có kiểu dữ
liệu là gì?
- HS: Suy nghĩ và trả lời.
- GV: Với những kiểu dữ liệu đã học có
thể quản lí đợc thông tin trên không?
- HS: Suy nghĩ và trả lời.
- GV: Nhận xét và đa ra kiểu bản ghi.
- GV: Lấy một bảng điểm của HS rồi ghi
rõ: Mỗi hàng ta coi là một bản ghi, mỗi
cột là một trờng
- HS: Chú ý nghe giảng và ghi bài.
* Một số khái niệm:
- Kiểu bản ghi dùng để mô tả cho các đối tợng có cùng một số thuộc tính mà các thuộc tính có thể có các kiểu dữ liệu khác nhau
- Bản ghi thờng đợc gọi lad Record, mỗi Record sẽ lu trữ dữ liệu về một đối tợng cần quản lí
- 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ó dữ liệu khác nhau
- Các ngôn ngữ lập trình thờng cho cách
để xác định:
+ Tên kiểu bản ghi
+ Tên các trờng
+ Kiểu dữ liệu của trờng
+ Cách khai báo biến
+ Cách tham chiếu đến trờng
Cách khai bào và sử dụng kiểu bản ghi trong ngồn ngữ Pascal
*Hoạt động 2: Giới thiệu cho HS biết cách khai báo kiểu bản ghi trong ngôn ngữ lập
trình Pascal
Trang 2Hoạt động của GV và HS Nội dung
- GV: Đặt vấn đề: Để khai báo biến bản
ghi, thờng khai báo một kiểu bản ghi sau
đó khai báo biến bản ghi thông qua kiểu
bản ghi
- GV: Sau từ khoá Type là khai báo kiểu
dữ liệu cho các trờng (field)
- GV: Làm thế nào để khai báo đợc nhiều
biến bản ghi có cùng kiểu dữ liệu?
- GV: Gọi ý.
- HS: Suy nghĩ và trả lời.
- GV: Nhận xét và trình bày cách khai
báo biến bản ghi
- GV: Lấy ví dụ về quản lí HS của một
lớp gồm: Họ tên, ngày tháng năm sinh,
giới tính, điểm các môn (Văn, Toán, Lí,
Hoá, Sinh, Ngoại ngữ, Tin)
- GV: Em hãy xác định kiểu dữ liệu cho
mỗi trờng (mỗi nội dung trên là một
tr-ờng của bản ghi)
- HS: Phát biểu ý kiến.
- GV: Nhận xét và đa ra cách truy cập
đến từng trờng của bản ghi
- HS: Chú ý nghe giảng và ghi bài.
1 Khai báo.
- Cách khai báo kiểu bản ghi:
Type <tên kiểu bản ghi>=Record
<Tên trờng 1>:<Kiểu trờng 1>;
<Tên trờng n>:<Kiểu trờng n>;
End;
* Cách khai báo biến:
Var <Tên biến>:<Tên kiểu bản ghi>; Var <Tên mảng>:Array[1 n] of <tên
kiểu bản ghi>;
- Để truy cập vào từng trờng của bản ghi,
ta viết:
<Tên biến bản ghi>.<tên trờng>
* Ví dụ:
A.hoten A.Ngaysinh Lop[i].toan
Với i là chỉ số nào đó của mảng Lop
*Hoạt động 3: Giới thiệu cho HS biết cách khai Gán giá trị cho các biến bản ghi và
một ví dụ về bản ghi quản lí HS trong ngôn ngữ lập trình Pascal
- GV: Vì bản ghi có nhiều trờng nên việc
gán giá trị cho bản ghi phức tạp hơn các
biến khác Khi nhập thông tin vào từ bản
phím, ta thờng phải nhập thông tin cho
từng trờng
- GV: Đa ra hai cách để gán giá trị cho
bản ghi
- HS: Chú ý nghe giảng và ghi bài.
2 Gán giá trị.
- Có 2 cách để gán giá trị cho bản ghi:
+ Cách 1: Dùng lệnh gán trực tiếp: Nếu
A và B là hai bản ghi cùng kiểu ta có thể gán giá trị của A cho B bằng câu lệnh gán:
VD: B:=A; hoặc A:=B;
+ Cách 2: Gán giá trị cho từng trờng:
Dùng câu lệnh gán gán giá trị cho các tr-ờng hoặc nhập vào từ bàn phím
* VD: A.Hoten:= ‘Nguyen Van A’;
Readln(a.Ngaysinh);
- Chơng trình quản lí bảng kết quả thi:
- GV: Lấy ví dụ về quản lí học sinh
(Dùng bảng phụ để trình bày)
- GV: Phân tích chơng trình để HS hiểu
rõ u điểm của sử dụng bản ghi trong quản
lí
- HS: Chú ý nghe giảng và ghi bài.
Program vd1;
Uses crt;
Hocsinh = record
SBD: integer;
Hoten: string[30];
Toan,Van,Tong:real;
Trang 3Ketqua: string[10];
end;
Var Lop:Array[1 100] of Hocsinh;
i,n: integer;
BEGIN Clrscr; { nhap so hoc sinh }
Write(‘ Nhap vao so hoc sinh trong lop:’); readln(n);
{ nhap du lieu tung ban ghi}
For i:=1 to n do Begin
writeln(‘ Nhap so lieu hoc sinh thu ‘,i); Write(‘ SBD: ’); readln(Lop[i].SBD); Write(‘Ho ten :’); readln(Lop[i].Hoten); Write(‘Diemtoan:’); readln(Lop[i].Toan); Write(‘Diem van :’);readln(Lop[i].Van); end;
{ tinh tong cho tung ban ghi }
For i:=1 to n do Lop[i].Tong:= Lop[i].Toan+ Lop[i].Van; { dien ket qua cho tung ban ghi }
For i:=1 to n do
if Lop[i].Tong>=10 then Lop[i].Ketqua:=‘Dat’
else Lop[i].Ketqua:=‘Khong dat’;
{ In bang du lieu }
Writeln(‘ Bang ket qua kiem tra ‘);
For i:=1 to n do Writeln(Lop[i] sbd:5, Lop[i] Hoten:30, Lop[i].toan:5:1, Lop[i].Van:5:1,
Lop[i].tong:8:1,Lop[i].Ketqua:15); Readln;
END
V củng cố dặn dò.– dặn dò
- Nhắc lại một số khái niệm mới
- Nhắc lại cấu trúc lệnh về khai báo, truy cập đến các thành phần của bản ghi
- Ra bài tập về nhà