Const
nn=100;
type
Abit=record
fio:string;
ball:array[1..3] of byte;
from:string;
midb:real
end;
var
t:Abit;
mAb:array[1..nn] of Abit;
i,j,n,m:integer;
midinst:real;
begin
{ ввод исходных данных }
Write('Количество абитуриентов (до 100): '); Readln(n);
Write('Средний балл по институту: '); Readln(midinst);
m:=0;
for i:=1 to n do
begin
Writeln('Абитуриент № ',i);
With mAb[i] do begin
Write('Фамилия, И.О.: '); Readln(fio);
Write('Баллы по трем предметам через пробел: ');
Readln(ball[1],ball[2],ball[3]);
midb:=(ball[1]+ball[2]+ball[3])/3;
Write('Место жительства: '); Readln(from)
end;
if mAb[i].midb>midinst then m:=m+1;
end;
{ простейшая обменная сортировка по убыванию }
for i:=1 to n-1 do
for j:=i+1 to n do
if mAb[i].midb t:=mAb[i];
mAb[i]:=mAb[j];
mAb[j]:=t
end;
{ вывод }
Writeln;
Writeln('Количество поступающих со средним баллом выше среднеинститутского: ',m);
for i:=1 to n do
with mAb[i] do
Writeln(fio,' ',ball[1]:2,ball[2]:2,ball[3]:2,' ',from)
end.
Тестовое решение:
Количество абитуриентов (до 100): 4
Средний балл по институту: 5.94
Абитуриент № 1
Фамилия, И.О.: Иванов А.Г.
Баллы по трем предметам через пробел: 9 7 5
Место жительства: Вологда
Абитуриент № 2
Фамилия, И.О.: Петров Л.Л.
Баллы по трем предметам через пробел: 9 9 9
Место жительства: Грязевец
Абитуриент № 3
Фамилия, И.О.: Раковский Д.Г.
Баллы по трем предметам через пробел: 4 4 5
Место жительства: Сокол
Абитуриент № 4
Фамилия, И.О.: Акимова Я.С.
Баллы по трем предметам через пробел: 9 5 4
Место жительства: Харовск
Количество поступающих со средним баллом выше среднеинститутского: 3
Петров Л.Л. 9 9 9 Грязевец
Иванов А.Г. 9 7 5 Вологда
Акимова Я.С. 9 5 4 Харовск
Раковский Д.Г. 4 4 5 Сокол