Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (215.6 KB, 12 trang )
<span class='text_page_counter'>(1)</span>BÀI 13. KIỂU BẢN GHI.
<span class='text_page_counter'>(2)</span> ĐẶC VẤN ĐỀ BẢNG KIỂM TRA CHẤT LƯỢNG SBD. Họ Và Tên. Môn Tóan. Môn Văn. 01. Nguyễn Thị Minh Huệ. 9. 7. 02. Nguyễn Thị Thu Thảo. 8. 8. ………. ………. ………... ………….. 41. Nguyễn Mạnh Kha. 6. 6. 42. Hùynh Minh Châu. 3. 5. 43. Hòang Lê Hạnh. 7. 2. Tổng. Kết Quả. …….. ……………. Yêu cầu: nhập vào thông tin của từng học sinh, tính tổng và xét kết quả, biết rằng tổng >= 10, thì kết quả là đạt.
<span class='text_page_counter'>(3)</span> 1.Một Số Khái Niệm Kiểu bản ghi được 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 gọi là Record, mỗi Record sẽ lưu 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..
<span class='text_page_counter'>(4)</span> 2. Khai báo Cách khai báo kiểu:. Type <tên kiểu bản ghi> = record <tên trường 1>:<kiểu trường 1> ……………………. <tên trường k>:<kiểu trường k> end; Cách khai báo biến:. Var < tên biến bản ghi> : < tên kiểu bản ghi> <tên mảng>: ARRAY [1.. Max] of < tên kiểu bản ghi>.
<span class='text_page_counter'>(5)</span> 2. Khai Báo SBD. Họ Và Tên. Môn Tóan. Môn Văn. 01. Nguyễn Thị Minh Huệ. 9. 7. 02. Nguyễn Thị Thu Thảo. 8. 8. ………. ………. ………... ………….. 41. Nguyễn Mạnh Kha. 6. 6. 42. Hùynh Minh Châu. 3. 5. 43. Hòang Lê Hạnh. 7. 2. Type hossinh = record SBD: integer; hoten: string [30]; toan, van, tong : real; ketqua: string [8];. Var A,B : LOP; LOP : ARRAY [1..43] of hocsinh; i,j,n : integer;. Tổng. Kết Quả. …….. ……………. Học sinh Số báo danh Họ Và Tên. Mỗi cột là một trường. Mỗi hàng là một bản ghi. Điểm môn tóan văn Kết quả.
<span class='text_page_counter'>(6)</span> 3. Các thao tác với bản ghi a. Nhập thông tin học sinh Các bước. Thể hiện bằng pascal. Nhập thông tin học sinh. Write(‘ Nhap vao so hoc sinh trong lop : ‘); readln(n);. Nhập dữ liệu ( các thuộc tính ) của từng bản ghi. For i:=1 to n do Begin writeln(‘ Nhap du lieu cho hoc sinh thu ‘,i); Write(‘ SBD : ‘); readln(LOP[i].SBD); Write(‘HO TEN : ‘); readln(LOP[i].Hoten); Write(‘ Diem toan : ‘);readln(LOP[i].Toan); Write(‘ Diem van : ‘);readln(LOP[i].Van); end;.
<span class='text_page_counter'>(7)</span> a. Nhập thông tin học sinh Khi i = 1 LOP[1].SBD. giá trị trường cho SBD của học sinh thứ nhất nằm ở bản ghi đầu tiên.. Tương tự như vậy nhập các giá trị còn lại.( họ tên, điểm văn, tóan) SBD. Họ Và Tên. Điểm Tóan. Điểm Văn. 1. Nguyễn Thị Minh Huệ. 6. 6. quá trình nhập kết thúc khi nhập hết dữ liệu của bản ghi.
<span class='text_page_counter'>(8)</span> b.Các thao tác xử lí trong bản ghi Tính tổng điểm văn, tóan của từng hoc sinh For i:=1 to n do LOP[i].Tong:= LOP[i].Toan + LOP[i].Van; Nếu tổng lớn hơn 10 thì điền từ “ đạt ” vào kết quả, nếu tổng nhỏ hơn 10 thi in từ “ không đạt”. For i:=1 to n do IF LOP[i].Tong>=10 then LOP[i].Ketqua=‘Dat’ else LOP[i].Ketqua=‘Khong dat’;.
<span class='text_page_counter'>(9)</span> 4.Gán Giá Trị Có 2 cách gán giá trị cho biến bản ghi :. Dùng lệnh gán trực tiếp: Với A,B cùng kiểu bản ghi VD: A := B Dùng lệnh gán trực tiếp: thực hiện câu lệnh bằng lệnh gán hoăc nhập từ bàn phím. VD: A.hoten:= “ Le Nhat Duy”;.
<span class='text_page_counter'>(10)</span> 5. Một Số Ví Dụ VD1: Một địa chỉ (ở thành phố HCM) bao gồm : số nhà, tên đường,phường, quận, ta mô tả Record diachi như sau: Type Diachi = RECORD sonha: string [10] ; tenduong: string [30]; phuong: string [30]; quan: string [10]; end;.
<span class='text_page_counter'>(11)</span> 5. Một Số Ví Dụ VD2: để mô tả thời gian ta có 3 trường hợp: ngày, tháng, năm. TYPE date = RECORD ngay: 1..31; thang: 1..12; nam: integer; end;.
<span class='text_page_counter'>(12)</span> 6.Bài Tập Về Nhà. 1.Mô tả 1 điểm trong không gian 3 chiều. 2. Mô tả số học sinh của 1 lớp học với sỉ số của lớp là 40, ta dùng các trường số thứ tự, họ và tên, giới tính, năm sinh, địa chỉ. Giả sử ta đã có mô tả kiểu date, diachi ở ví dụ 1, ví dụ 2..
<span class='text_page_counter'>(13)</span>