Элементы первого столбца массива А упорядочены по убыванию. Включить массив В, в качестве новой строки, в массив А с сохранением упорядоченности по элементам первого столбца — Pascal(Паскаль)

program PascalGuru;

uses crt;

var
  A: array [1 .. 50, 1 .. 50] of integer;
  B: array [1 .. 50] of integer;
  n, m, i, j, k: integer;

begin
  write('kol-vo strok N= ');
  readln(n);
  write('kol-vo stolbcov M= ');
  readln(m);

  for i := 1 to n do
    for j := 1 to m do
    begin
      write('A[', i, ',', j, ']= ');
      readln(A[i, j]);
    end;

  writeln('Vvedite massiv B, razmernostiyu ', m);
  for i := 1 to m do
  begin
    write('B[', i, ']= ');
    readln(B[i]);
  end;

  clrscr;
  write('A:');
  for i := 1 to n do
  begin
    writeln;
    for j := 1 to m do
      write(A[i, j]:8);
  end;
  writeln;
  writeln;

  writeln('B:');
  for i := 1 to m do
    write(B[i]:8);

  for i := n downto 2 do
    if (A[i, 1] > B[1]) and (A[i + 1, 1] < B[1]) then
      k := i;

  if (B[1] < A[1, 1]) then
    k := 1;

  if (B[1] > A[n, 1]) then
  begin
    inc(n);
    for j := 1 to m do
      A[n, j] := B[j];
  end
  else
  begin
    For i := n downto k do
      for j := 1 to m do
        A[i + 1, j] := A[i, j];
    inc(n);
    for j := 1 to m do
      A[k, j] := B[j];
  end;

  writeln;
  writeln;
  write('A:');
  for i := 1 to n do
  begin
    writeln;
    for j := 1 to m do
      write(A[i, j]:8);
  end;

  readln;

end.

Leave a Comment

53 + = 60