VAR {Khai bao bien ban ghi} ts : HSTS; cb : HSCB; sv : Record hoten : String[25]; lop : String[5]; tuoi : Byte dtb: Real;
End;
SỬ DỤNG RECORD
Lệnh gán 2 biến Record cùng kiểu
A := B;
Chỉ được phép truy nhập tới các trường của biến Record
BienBG.Truong
Các thao tác truy nhập:
Nhập: Readln(BienBG.Truong);
Xuất: Write(BienBG.Truong);
Gán trị: BienBG.Truong := ... ;
Chú ý
Không dùng thủ tục Read, Readln, Write, Writeln cho một biến Record.
Write(bg); {SAI !}
Readln(bg) {bg - biến Record}
Không dùng các phép toán số học, logic, so sánh (= , <>, >, >=, <, <=) đối với các biến Record.
VD 8.2 (Dùng sai đối với biến Record).
Type
HSSV = record
hoten:string[20];
dtb:real;
end;
var s1, s2: HSSV;
begin
s1.hoten:= 'Mot'; s1.dtb:= 1.1;
s2.hoten:= 'Hai'; s2.dtb:= 2.2;
if (s1=s2) then writeln('s1 = s2')
else
writeln('SV1 khac SV2!');
Readln;
end.
VD 8.3 (Khoảng cách giữa 2 điểm) Lập trình nhập vào toạ độ 2 điểm A(xA, yA), B(xB, yB) trong hệ toạ độ đềcác. Tính d(A, B).
Hướng dẫn:
Khai báo 2 biến A, B kiểu Record với 2 trường x, y (kiểu thực).
Tính d(A, B) theo công thức:
Sqrt(Sqr(xA-xB) + Sqr(yA-yB))
VD 8.4 (Xếp loại học bổng) Lập trình nhập vào danh sách N sinh viên (N < 1000) với các thuộc tính họ tên, ngày sinh, lớp, điểm trung bình mở rộng, học bổng. Xếp loại học bổng cho các SV theo quy định hiện hành và in kết quả ra màn hình.
Hướng dẫn:
Khai báo 1 biến SV kiểu mảng Record, mỗi phần tử của mảng lưu trữ thông tin cho một SV.
Nhập N và dùng lệnh FOR để nhập thông tin của mỗi SV gồm họ tên, ngày sinh, lớp, điểm trung bình mở rộng vào biến SV, đồng thời dùng lệnh IF để gán trị cho trường học bổng.
Dùng lệnh FOR để in DS ra màn hình.
Chia sẻ với bạn bè của bạn: |