Создать процедуру, которая реализует решение предложенной задачи на паскале

Задан массив с количеством элементов N. Сформировать два массива: в первый включить элементы исходного массива с четными номерами, а во второй — с нечетными.

Ответы

Ответ дал: Аноним
2
const
  n=20;
type
  v=array[1..n] of integer;
  w=array[1..n div 2] of integer;
var
  a:v;

procedure FormW(var pa:w;pOdd:boolean);
{ При pOdd=true формируется массив из нечетных элементов,
  при false - из четных }
var
  i,k:integer;
begin
  k:=0;
  if pOdd then i:=1 else i:=2;
  while i<=n do begin
    Inc(k); pa[k]:=a[i]; i:=i+2
  end
end;
 
var
  b,c:w;
  i:integer;

begin
  Randomize;
  Writeln('Элементы исходного массива');
  for i:=1 to n do
  begin a[i]:=Random(50); Write(a[i]:3) end;
  Writeln;
  FormW(b,false);
  Writeln('Массив из элементов с четными номерми');
  for i:=1 to (n div 2) do Write(b[i]:3);
  Writeln;
  FormW(c,true);
  Writeln('Массив из элементов с нечетными номерми');
  for i:=1 to (n div 2) do Write(c[i]:3);
  Writeln
end.
Тестовое решение:
Элементы исходного массива
 11 37 22 43 44 14  3 29  2 25  0 30 37 44 24 45 34 30 39 42
Массив из элементов с четными номерми
 37 43 14 29 25 30 44 45 30 42
Массив из элементов с нечетными номерми
 11 22 44  3  2  0 37 24 34 39



wladpuhov92: Спасибо конечно. Но в программе нужна процедура которая формирует 2 массива. Создать процедуру, которая реализует решение предложенной задачи на паскале
Аноним: Извините. меня отвлекли.... сейчас сделаю на базе процедуры
Аноним: Готово. Надеюсь, так подойдет.
Вас заинтересует