Код:
uses crt;
type avto = record
marka: string;
st,kilo: real;
end;
var f1,f2: text;
name1,name2: string;
a: array [1..100] of avto;
n,i,j,firms: integer;
tmp: avto;
average: real;
begin clrscr;
write('Imea faila dlea chtenia: '); readln(name1);
assign(f1,name1); reset(f1);
write('Imea faila dlea zapisi: '); readln(name2);
assign(f2,name2); rewrite(f2);
readln(f1,n);
for i:=1 to n do
begin
readln(f1,a[i].marka);
readln(f1,a[i].st);
readln(f1,a[i].kilo);
end;
close(f1);
for i:=n-1 downto 1 do
for j:=1 to i do
if a[j].marka > a[j+1].marka then
begin
tmp:=a[j];
a[j]:=a[j+1];
a[j+1]:=tmp;
end;
firms:=1;
for i:=2 to n do
if a[i].marka <> a[i-1].marka then inc(firms);
for i:=1 to n do
begin
writeln(f2,a[i].marka);
writeln(f2,a[i].st:6:2);
writeln(f2,a[i].kilo:6:2);
end;
writeln(f2,firms);
average:=0;
for i:=1 to n do average:=average + a[i].kilo;
average:=average/n;
writeln(f2,'Srednii kilometraj = ',average:6:2);
close(f2);
writeln('Dannye byli perepisany v ',name2);
readkey; end.