A. Mục tiêu:
1. Kiến thức:
Biết khái niệm kiểu bản ghi.
Biết cách khai báo bản ghi, truy cập trường của bản ghi
2. Kỹ năng:
Bước đầu biết mô tả một đối tượng bằng một số thuộc tính cần quản lí.
Khai báo kiểu bản ghi.
Nhận biết được trường (thuộc tính) của một biến bản ghi và bước đầu viết được một vài thao tác xử lí trên từng trường của bản ghi.
3. Thái độ:
Ham thích môn học, có tính kỷ luật cao và tính thần làm việc theo nhóm.
Tiếp tục rèn luyện các phẩm chất cần thiết của người lập trình như: xem xét vấn đề một cách cẩn thận, chu đáo, sáng tạo, không thỏa mãn với các kết quả ban đầu đạt được,
Tuần 17: Tiết 32: Ngày soạn: 28/11/2008 Ngày dạy: 01/12/2008 § 13. KIỂU BẢN GHI A. Mục tiêu: 1. Kiến thức: Biết khái niệm kiểu bản ghi. Biết cách khai báo bản ghi, truy cập trường của bản ghi 2. Kỹ năng: Bước đầu biết mô tả một đối tượng bằng một số thuộc tính cần quản lí. Khai báo kiểu bản ghi. Nhận biết được trường (thuộc tính) của một biến bản ghi và bước đầu viết được một vài thao tác xử lí trên từng trường của bản ghi. 3. Thái độ: Ham thích môn học, có tính kỷ luật cao và tính thần làm việc theo nhóm. Tiếp tục rèn luyện các phẩm chất cần thiết của người lập trình như: xem xét vấn đề một cách cẩn thận, chu đáo, sáng tạo, không thỏa mãn với các kết quả ban đầu đạt được, B. Trọng tâm: Biết cách khai báo biến cho kiểu bản ghi. Làm quen với cách gán giá trị cho kiểu bản ghi. C. Chuẩn bị: 1. GV: Giáo án, chuẩn bị một số ví dụ sẵn, SGK. 2. HS: SGK, vở ghi chép. D. Tiến trình tiết học: 1. Tổ chức lớp: Lớp trưởng báo cáo sĩ số của lớp và đồng phục của lớp mình. 2. Bài cũ: Hãy nêu cách khai báo biến cho kiểu xâu? Yù nghĩa của hàm Upcase(ch)? 3. Bài mới: HĐ1: Một số khái niệm: Nội dung Hoạt động của GV và HS È Nội dung: RECORD là kiểu dữ liệu bao gồm nhiều thành phần có thể khác nhau về kiểu dữ liệu, mỗi thành được gọi là trường (Field). GV: Để khai báo lý lịch của một học sinh,người ta phải khai báo họ tên người (kiểu chuỗi), phái (nam:=1, nữ:=0 theo kiểu Boolean), ngày sinh,địa chỉ,...Với các kiểu dữ liệu cơ bản khác nhau như vậy trong Pascal ta có thể sử dụng kiểu mảng được không? Vì sao? HS: Suy nghĩ trả lời. HĐ2: NNhập Nhanffưu Cách khai báo biến cho kiểu bản ghi: Nội dung Hoạt động của GV và HS F Cách khai báo: TYPE = RECORD : ; : ; . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . : ; END ; VAR : ; VD1: Khai báo như sau: Type Lylich = Record Hoten : String[25]; Diem : 0..10 ; Loai : String[10]; End ; Var hs1,hs2,hs3 : Lylich ; F Cách tham chiếu đến trường: Nếu A là biến bản ghi và X là tên trường của A thì để tham chiếu đến trường X, ta viết: A.X GV: Em hãy nêu cú pháp của cách khai báo biến kiểu bản ghi? HS: Nêu cú pháp của kiểu bản ghi. GV: Yêu cầu HS định nghĩa bản ghi để mô tả lý lịch học sinh gồm: Họ tên , điểm , loại và khai báo 3 biến hs1,hs2,hs3 có kiểu lylich? HS: Lên bảng trả lời câu hỏi. GV: Yêu cầu HS tự lấy VD khác về kiểu bản ghi? HS: Tự lấy VD khác. GV: Em hãy nêu cách tham chiếu đến trường trong kiểu bản ghi? HS: Suy nghĩ và trả lời. HĐ3: NNhập Nhanffưu Gán giá trị: Nội dung Hoạt động của GV và HS È Dùng lệnh gán: Nếu A& B là hai bíên bản ghi cùng kiểu thì : A:=B(B:A); È Gán giá trị cho từng trường: VD: A.Hoten:=’Ng Van A’; Lop{2} . Nsinh=’01/02/1990’; È VD áp dụng: Viết CT nhập vào 1 danh sách học sinh trong 1 lớp gồm 50 em, cĩ các thuộc tính : hoten, dtoan, dtin( từ bàn phím), DTB(=(Dtoan+Dtin)/2), ketqua(=’Dat’ nếu DTB>=5, =’rot’ nếu DTB < 5). Program ket qua_hs; TYPE hocsinh = RECORD Hoten: String [20]; Nsinh: String [10]; Gtinh: Boolean; Dia – chi: String [50]; End; VAR Lop: Array[1..50] of hocsinh; i: Byte; BEGIN For i:=1 to 50 Do Begin Write(‘Nhap ho ten hs thu ’,i); Readln( Lop[i]. Hoten); Write( ‘Lop Dtoan, Dtin hs thu’,i); Readln( Lop[i]. Dtoan, Lop[i].Dtin); Lop[i].DTB:=(Lop[i].Dtoan+Lop[i].Dtin)/2; IF Lop[i].DTB>=5 THEN Lop[i].Ketqua:=’Dat’ ELSE Lop[i].Ketqua:=’Rot’; End; Readln END. GV: Nếu các em muốn gán giá trị cho từng trường thì ta viết giá trị cho trường đĩ. VD: Gán cho HS thứ 2 trong lớp ngày sinh là’01/02/1990’ GV: Đối với ví dụ áp dụng này, các em phải khai báo 1 mảng gồm 50 học sinh, như vậy để nhập dữ liệu cho mảng ta phải dùng 1 câu lệnh FOR-DO. HS: Lắng nghe và suy nghĩ về giải thuật viết chương trình. GV: Gọi HS đọc khai báo kiểu bản ghi hocsinh. GV: Hoten, Dtoan, Dtinđược nhập từ bàn phim bằng thủ tục Writer & Readln, DTB tính bằng câu lệnh gán, kết quả được gán giá trị saukhi kiểm tra bằng câu lệnh gán, ketquađược gán giá trị sau khi kiểm tra bằng câu lệnh IF-THEN HS: Lắng nghe & hiểu bài E. Cũng cố: Nắm cách khai báo cho kiểu bản ghi. Nắm được cách tham chiếu đến trường và cách gán giá trị của kiểu bane ghi. Dặn dò: Xem vàø học thuộc các phần đã học. Làm và chuẩn bị kĩ các bài tập để tiết sau làm bài tập tại lớp. F. Rút kinh nghiệm:
Tài liệu đính kèm: