program srednyak;
uses crt;
const MAX=3;
type Matrix=array[1..MAX,1..MAX] of integer;
Vector=array[1..max*max+max*max]of integer;
procedure getfull(var M: Matrix);
var i,j: integer;
begin
randomize;
for i:=1 to max do
for j:=1 to max do m[i,j]:=random(20)-10;
end;
procedure printM(m: matrix);
var i,j: integer;
begin
for i:=1 to max do begin
for j:=1 to max do write(m[i,j]:4);
writeln;
end;
end;
procedure printV(V: Vector);
var i: integer;
begin
for i:=1 to max*max+max*max do write(V[i]:3);
end;
procedure tovector(A,B: Matrix;var V:Vector);
var i: Integer;
begin
for i:=1 to max*max do begin
V[i]:=A[(i div max) + 1,i mod max];
end;
for i:=i+1 to max*max+max*max do
V[i]:=B[(i div max) + 1,i mod max];
end;
function overal(V:Vector):real;
var i,sum: integer;
begin
sum:=0;
for i:=1 to max*max+max*max do sum:=sum+V[i];
overal:=sum/(max*max+max*max);
end;
var
A,B: Matrix;
V: Vector;
begin
clrscr;
getfull(A);
printM(A);
writeln;
getfull(B);
printm(B);
writeln;
tovector(A,B,V);
printV(V);
writeln;
writeln('Mid arifm=',overal(V));
readkey;
end.