program sred_bal_1;
uses crt;
type Tstud=record
fam:string[15];
srb:real;
end;
var sp:array[1..50] of Tstud;
n,i,k,j,t:byte;
srg:real;
c:char;
begin
clrscr;
writeln('Введите данные о студентах, окончание ввода Esc:');
n:=0;srg:=0;
repeat
n:=n+1;
writeln(' Студент',i);
write(' Фамилия: ');readln(sp[n].fam);
write(' Средний балл: ');readln(sp[n].srb);
srg:=srg+sp[n].srb;
c:=readkey;
until c=#27;
srg:=srg/n;
clrscr;
writeln(' Общий список студентов');
writeln;
writeln('---------------------------');
writeln('| Фамилия | Средний балл|');
writeln('---------------------------');
for i:=1 to n do
begin
write('| ',sp.fam);
gotoXY(13,whereY);
write('| ',sp.srb:0:2);
gotoXY(27,whereY);
write('|');
writeln;
end;
writeln('---------------------------');
readln;
clrscr;
writeln(' Список студентов, чей средний балл выше среднего: ');
writeln('(средний балл=':30,srg:0:2,')');
writeln;
writeln('---------------------------');
writeln('| Фамилия | Средний балл|');
writeln('---------------------------');
for i:=1 to n do
if sp.srb>srg then
begin
write('| ',sp.fam);
gotoXY(13,whereY);
write('| ',sp.srb:0:2);
gotoXY(27,whereY);
write('|');
writeln;
end;
writeln('---------------------------');
readln
end.