При работе с записями можно использовать массивы в полях записи или создавать массивы записей. Приведем примеры операторов для обоих случаев.
Type Pupil = Record
Fam: String[20];{ Фамилия }
Name: String[10];{ Имя }
Otmetka: array[1..5] of Byte{ Отметки по пяти предметам }
end;
Var _10_A, _10_B: array[1..30]of Pupil;{Переменные типа массив записей }
N, i: byte;{ N - Число учеников в классе }
Begin N:= 13;
_10_A[1]. Fam:= 'Гришин';
_10_A[1]. Name:= 'Анатолий';
{ и т. д. }
Writeln ('Введите оценки учеников по первому предмету: ');
For i:= 1 to N do begin
With _10_A[i] do Begin
Write(Fam:21, Name:11, '_');
Readln(Otmetka[1])
End
End
End.
{---------------------------------------------------------------- }
Type pupil = Record{ массивы в полях записи }
Fam: array[1..30] of String[20];{ Фамилия }
Name: array[1..30] of String[10];{ Имя }
N: Byte;{ Число учеников в классе }
Otmetka: array[1..5, 1..30] of Byte{ Отметки по пяти предметам }
end;
Var _10_A, _10_B: Pupil;{ Переменные типа запись }
i: byte;
Begin
With _10_A do Begin N:= 13;
Fam[1]:= 'Гришин';
Name[1]:= 'Анатолий'; { и т. д. }
Writeln ('Введите оценки учеников по первому предмету: ');
For i:= 1 to N do begin
Write(Fam[i]:21, Name[i]:11,'_');
Readln(Otmetka[1, i])
End
End
End.
Практическое задание N 1. 23
Создать базу данных для десяти учащихся класса с оценками по трем предметам. Вывести на экран таблицу учащихся в алфавитном порядке с оценками по всем предметам. Вывести на экран таблицу в порядке увеличения средней оценки ученика.