Сформировать одномерный массив из значений отрицательных и положительных элементов случайных (двумерных) массивов, и вычислить для него(массива) среднее арифметическое — Pascal(Паскаль)

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.

Leave a Comment

88 + = 95