Помогите решить массив в паскале,пожалуйста!!!Дано:массивы А1(N1,M1),A2(N2,M2),A3(N3,M3). Сформировать одномерные массивы В1,В2,В3,каждый из которых состоит из элементов,лежащих в интервале [1,3] массивов А1,А2,А3 соответственн...

Помогите решить массив в паскале,пожалуйста!!! Дано:массивы А1(N1,M1),A2(N2,M2),A3(N3,M3). Сформировать одномерные массивы В1,В2,В3,каждый из которых состоит из элементов,лежащих в интервале [1,3] массивов А1,А2,А3 соответственно. Формирование одномерного массива,состоящего из элементов исходного массива, лежащих в интервале[1,3], осуществить в подпрограмме.
Гость
Ответ(ы) на вопрос:
Гость
type     arr = array[,] of integer;     arrB = array of integer; var     A1, A2, A3: arr;     B1, B2, B3: arrB;     n,m:integer; procedure Zapoln(var A: arr;k:integer); var  i, j, n, m: integer; begin writeln('Массив А',k); n:= Length(A,0); m:= Length(A,1); for i := 0 to n-1 do   begin   for j := 0 to m-1 do     begin     A[i,j]:=random(10);     write(A[i,j]:2)     end;   writeln   end end; procedure FormB(a:arr;var b:arrB;n,m,r:integer); var i,j,k:integer; begin writeln('Массив В',r); for i:=0 to n-1 do   for j:=0 to m-1 do     if (1<=a[i,j]) and (a[i,j]<=3) then       begin       b[k]:=a[i,j];       write(b[k]:3);       k:=k+1       end; writeln end; function razm(a: arr;n,m:integer):integer; var i,j:integer; begin for i:=0 to n-1 do   for j:=0 to m-1 do     if (1<=a[i,j]) and (a[i,j]<=3) then result:=result+1 end; begin write('Введите N1 и M1: '); readln(n,m); SetLength(A1, n, m); Zapoln(A1,1); SetLength(B1, Razm(A1,n,m)); formB(A1,B1,n,m,1); write('Введите N2 и M2: '); readln(n,m); SetLength(A2, n, m); Zapoln(A2,2); SetLength(B2, Razm(A2,n,m)); formB(A2,B2,n,m,2); write('Введите N3 и M3: '); readln(n,m); SetLength(A3, n, m); Zapoln(A3,3); SetLength(B3, Razm(A3,n,m)); formB(A3,B3,n,m,3); end.
Не нашли ответ?
Ответить на вопрос
Похожие вопросы