Даны два массива вещественных чисел. Один массив упорядочен, другой – не упорядочен. Составить из двух массивов один упорядоченный массив. Использовать метод простых вставок — Pascal(Паскаль)

program PascalGuru;

uses crt;

label 1;

procedure exchange(var a, b: real);
var
  c: real;
begin
  c := a;
  a := b;
  b := c;
end;

var
  a, b, c: array [1 .. 50] of real;
  i, j, k, n, n1, n2: integer;

begin
  write('Vvedite razmer VOZRASTAYUSCHEGO massiva: ');
  readln(n1);

  writeln('Vvedite el-ty massiva:');
  for i := 1 to n1 do
  begin
    write(i, ': ');
    readln(a[i]);
  end;

  write('Vvedite razmer NEvozrastayuschego massiva: ');
  readln(n2);

  writeln('Vvedite el-ty massiva:');
  for i := 1 to n2 do
  begin
    write(i, ': ');
    readln(b[i]);
  end;

  writeln;
  writeln('VOZRASTAYUSCHIY massiv:');
  for i := 1 to n1 do
    write(a[i]:8:2);

  writeln;
  writeln;
  writeln('NEvozrastayuschiy massiv:');
  for i := 1 to n2 do
    write(b[i]:8:2);

  k := n1;
  for i := 1 to n1 do
    c[i] := a[i];
  for i := 1 to n2 do
  begin
    inc(k);
    c[k] := b[i];
  end;

1:
  for i := 2 to k do
    if c[i - 1] > c[i] then
    begin
      exchange(c[i - 1], c[i]);
      goto 1;
    end;

  writeln;
  writeln;
  writeln('Rezulitiruyuschii massiv:');
  for i := 1 to k do
    write(c[i]:8:2);

  readln;

end.

Leave a Comment

8 + 2 =