Описать процедуру constr(A,B,C,D), которая по матрицам A, B, C типа table1 строит матрицу D типа table2: — Pascal(Паскаль)

type table1 = array [1..10,1..10] of integer;
table2 = array [1..20,1..30] of integer;

	A, B, C
D =	
	B, N, A
где N –нулевая матрица типа table1.
uses crt;
type table1=array[1..10,1..10] of integer;
     table2=array[1..20,1..30] of integer;
procedure constr(a,b,c:table1;n:byte;var d:table2);
var i,j:byte;
begin
for i:=1 to n do
for j:=1 to n do
 begin
  d[i,j]:=a[i,j];
  d[i,n+j]:=b[i,j];
  d[i,2*n+j]:=c[i,j];
  d[n+i,j]:=b[i,j];
  d[n+i,n+j]:=0;
  d[n+i,2*n+j]:=a[i,j];
 end;
writeln('Итоговая матрица:');
for i:=1 to 2*n do
 begin
  for j:=1 to 3*n do
  write(d[i,j]:4);
  writeln;
 end;
readln
end;
procedure Vvod(var a:table1;n:byte;c:char);
var i,j:byte;
begin
writeln('Матрица ',c);
for i:=1 to n do
 begin
  for j:=1 to n do
   begin
    a[i,j]:=random(40)+10;
    write(a[i,j]:4);
   end;
  writeln;
 end;
writeln;
end;
var a,b,c:table1;
    d:table2;
    n:byte;
begin
clrscr;
randomize;
repeat
write('Размер исходных матриц до 10 n=');
readln(n);
until n in [1..10];
Vvod(a,n,'A');
Vvod(b,n,'B');
Vvod(c,n,'C');
write('Press Enter...');
readln;
constr(a,b,c,n,d);
end.

Leave a Comment

5 + 4 =