Задание: Составить программу с использованием типа Record. Программа должна выполнять фильтрацию данных в таблице по условию задачи. Количество записей в таблице должно быть не меньше 8. Таблица содержит следующие данные о студенте:
 фамилия
 имя
 год рождения
 год поступления в вузы
 пять оценок за последнюю сессию по 5-балльной шкале.
 средний балл.
* Оформить нахождения среднего балла, ввода данных о студенте и печать личных данных как подпрограммы.
Вывести анкетные данные студентов, имеющих все оценки 4.

мой код:
program v4;
uses crt;
type stud=record
prizv,imya: string; riknar, rikvs: integer; serbal: real;
baly: array [1..5] of integer
end;
inf=array [1..8] of stud;
var inform: inf; n:integer;
procedure vved(inform:inf; n:integer);
var i,j: integer;
begin
for i:=1 to n do
with inform[i] do
begin
writeln('vvedit dani pro ',i,'-go studenta');
writeln('vvedit prizvyshe'); readln(prizv);
writeln('vvedit imya');readln(imya);
writeln('vvedit rik narodj'); readln(riknar);
writeln('vvedit rik vstupu'); readln(rikvs);
for j:=1 to 5 do begin
writeln('vvedit bal ',j); readln(baly[j])
end
end
end;
procedure sbal;
var i,j,suma: integer;
begin
for i:=1 to n do
with inform[i] do begin
suma:=0;
for j:=1 to 5 do
suma:=suma+baly[j];
serbal:=suma/5;
end
end;
procedure print(inform: inf;n: integer);
var i,j: integer; pr: boolean;
begin
for i:=1 to n do begin
pr:= false;
with inform[i] do
for j:=1 to 5 do
if baly[j]<>4 then pr:=true;
if pr then
begin
write(inform[i].imya,' ',inform[i].prizv,' ',inform[i].riknar:4, ' ', inform[i].rikvs:4, ' ', inform[i].serbal:3:2);
writeln
end
end
end;
begin
clrscr;
writeln('vvedit kilkist studentiv'); readln(n);
vved(inform,n);
sbal;
print(inform,n);
readln
end.