Необходимо разработать процедуру, преобразующую векторы X и Y к виду:
X=(a1…a8,x9…x20), Y=(y1…y5,b1…b6,y12…y16,a1…a4);- Pascal(Паскаль)

type
vector = array[1..20] of char;
var
x,y,a,b:vector;
Uses
  CRT;

type
  vector = array [1 .. 20] of char;

var
  x, y, a, b: vector;
  i, l: integer;

procedure vect(Var mas: vector; n: integer; c: char);
begin
  randomize;
  writeln(c, ': ');
  for i := 1 to n do
  begin
    mas[i] := random(10) - 3;
    write(mas[i]:3);
  end;
  writeln;
end;

procedure s(Var mas, mas2: vector; k, m, v: integer);
begin
  repeat
    mas[k] := mas2[m];
    inc(m);
    inc(k);
  until (k > v);
end;

begin
  vect(a, 8, 'A');
  writeln('X: ');
  for i := 1 to 20 do
  begin
    x[i] := random(10) - 3;
    write(x[i]:3);
    if i < 9 then
      x[i] := a[i];
  end;
  writeln;
  l := 1;
  vect(b, 6, 'B');
  vect(y, 16, 'Y');
  s(y, b, 6, l, 11);
  s(y, a, 17, l, 20);
  writeln;
  writeln('Ïðåîáðàçîâàííûé ìàññèâ X: ');
  for i := 1 to 20 do
    write(x[i]:3);
  writeln;
  writeln('Ïðåîáðàçîâàííûé ìàññèâ Y: ');
  for i := 1 to 20 do
    write(y[i]:3);
  readkey

end.

Leave a Comment

− 5 = 2