Tin Học 11 Bài 13: Kiểu Bản Ghi

Ví dụ

Một lớp gồm N (N \(\leq\) 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.

Chú ý rằng, trong các thuộc tính cần quản lí, chỉ có 5 thuộc tính đầu là độc lập, còn thuộc tính xếp loại được xác định dựa vào các điểm toán và văn. Để lưu trữ thông tin về học sinh, ta dùng kiểu bản ghi với 6 trường tương ứng với 6 thuộc tính cần quản lí.

Gợi ý làm bài:

Dưới đây là chương trình nhập vào từ bàn phím thông tin của từng học sinh trong lớp, thực hiện xếp loại và đưa ra màn hình kết quả xếp loại học sinh:

program Xep_loai;

uses crt;

const Max = 60;

type HocSinh = record

HoTen:string[30];

NgaySinh:string[10];

DiaChi:string[50];

Toan,Van:real;

XepLoai:char;

end;

var

Lop: array[1..Max] of HocSinh;

N,i: Byte;

begin

clrscr;

write('So luong hoc sinh trong lop N = '); readln(N);

for i:= 1 to N do

begin

writeln('Nhap so lieu ve hoc sinh thu ',i,': ');

write('Ho va ten: ');readln(Lop[i].HoTen);

write('Ngaysinh: ');readln(Lop[i].Ngaysinh);

write('Dia chi: ');readln(Lop[i].DiaChi);

write('Diem Toan: ');readln(Lop[i].Toan);

write('Diem Van: ');readln(Lop[i].Van);

if Lop[i].Toan+Lop[i].Van>=18

then Lop[i].XepLoai:='A';

if (Lop[i].Toan+Lop[i].Van>=14)And

(Lop[i].Toan+Lop[i].Van<18)

then Lop[i].XepLoai:='B';

if (Lop[i].Toan+Lop[i].Van>=10)And

(Lop[i].Toan+Lop[i].Van<14)

then Lop[i].XepLoai:='C'

else Lop[i].XepLoai:='D';

end;

clrscr;

writeln('Danh sach xep loai hoc sinh trong lop:');

for i:= 1 to N do

writeln(Lop[i].HoTen:30,' - Xep loai: ',Lop[i].XepLoai);

readln

end.

Từ khóa » Bản Ghi Là Gì