Дан одномерный числовой массив размером N, упорядоченный по возрастанию, и число X. Вставить X в массив, чтобы он сохранил упорядоченность — Pascal(Паскаль)

program PascalGuru;

var
  X: array [1 .. 50] of integer;
  n, i, z: integer;

Procedure Regulated(n, z: integer);
Var
  j, k: integer;
begin
  k := 0;
  j := n;
  While (j >= 1) and (k = 0) do
    if X[j] > z then
    begin
      X[j + 1] := X[j];
      j := j - 1
    end
    else
      k := j;
  X[k + 1] := z;
end;

{ ------------------------------------------------------------- }

begin
  writeln('Vvedite razmer massiva X:');
  read(n);
  writeln('Vvedite UPORIADOCENNYI massiva X:');
  for i := 1 to n do
  begin
    write('X[', i, ']=');
    readln(X[i]);
  end;

  write('Vot vvedennyy vami massiv X: ');
  for i := 1 to n do
    write(X[i], '  ');
  writeln;
  writeln;

  write('Kakoe cislo vstaviti: ');
  readln(z);
  Regulated(n, z); { вставка }
  inc(n);
  writeln;
  write('Vot massiv X posle vstavki: ');
  for i := 1 to n do
    write(X[i], '  ');
  writeln;
  writeln;

  readln;

end.

Leave a Comment

14 − 4 =