{Файл: prog_5_4_13.pas
Задача:
  Дан линейный массив из N целых чисел (N=10). Переместить все отрицательные 
  элементы массива в его начало, сохраняя взаимное расположение.
Автор:
  
Дата:
  28,10,2015}
  const
  N = 20;
  
var
  c          : array[1..N] of integer;
  a          : array[1..N] of integer;
  i          : integer;
  ot, pol    : integer; {pol-положительный элемент массива, ot - отрицательный элемент массива}
  iot, ipol  : integer; {ipol-индекс положительный элемент массива, iot-индекс отрицательный элемент массива}
  
  begin
  
  {Заполнение массива a случайными числами}
  randomize;
  for i:=1 to N do
    a[i]:=random(100)-50;
    
  {Вывод массива а на экран}
  writeln('Исходный массив');
  for i:=1 to N do
    write(a[i]:6);
  writeln;
  
  {отсортировка отрицательных символов}
  iot:=1;
  ipol:=1;
  for i:=1 to N do 
    if a[i]<0 then
     begin
      c[iot]:=a[i];
      inc(iot);
     end
   else
    begin
       a[ipol]:=a[i];
       inc(ipol);
   end;
   
   {создание окончательного массива}
   for i:=1 to (N-iot+1) do
    begin
      c[iot]:=a[i];
      inc(iot);
    end;
      
        {Вывод массива c на экран}
  writeln('Полученный массив');
  for i:=1 to N do
    write(c[i]:6);
  writeln;
end.
   
     
      
       
        
        
  