а)упорядочить список студентов по успеваемости
б)подсчитать средний балл в группе
в)посчитать средний балл каждого студента
С б и в нет проблем, проблема с а. Понял, что нужно обращаться не к массиву, а к файлу и использовать один из методов сортировки(после прочтения форума), а реализовать не получается.
program bred;
uses crt;
const
w=2;
n=5;
type
ank=record
fam:string[25];
imya:string[25];
otch:string[30];
ozenki:array [1..n] of integer;
end;
spisok=file of ank;
var
a,b:real;
i,j:integer;
an:ank;
s:spisok;
sbs,sbg:real;
begin
assign(s,'d:\studenti.dat');
rewrite(s);
for i:=1 to w do
begin
with an do
begin
write('Familia '); readln(fam);
write('Imya '); readln(imya);
write('Otchestvo '); readln(otch);
write('Ozenki ');
begin
for j:=1 to n do
read(ozenki[j]);
end;
readln;
end;
write(s,an);
end;
close(s);
reset(s);
for i:=1 to w do
begin
read(s,an);
for j:=1 to n do
a:=a+an.ozenki[j];
end;
sbg:=a/(n*w);
Writeln('Srednii ball v gruppe =',sbg:1:1);
close(s);
reset(s);
for i:=1 to w do
begin
read(s,an);
b:=0;
begin
for j:=1 to n do
b:=b+an.ozenki[j];
end;
sbs:=b/n;
write(s,an);
with an do
writeln(an.fam,' ',an.imya,' ',an.otch,' ','srednii ball = ', sbs:1:1);
end;
close(s);
End.