 
                                                 
                                                var
  i: integer;
  a: array [1..15] of integer;
begin
  write('Исходный массив: ');
  for i:= 1 to 15 do //Формируем и распечатываем массив
  begin
    a[i]:= random(8); 
    write(a[i],' ');
  end;
  writeln; //Перевод на новую строку
  write('Преобразованный массив: ');
  for i:= 1 to 15 do
  begin
    if a[i] mod 2 = 0 then a[i]:= a[i] + 1 {Если элемент массива с индексом i четный, то прибавляем к нему 1, иначе умножаем на 2}
    else a[i]:= a[i] * 2;
    write(a[i], ' ');
  end;
  writeln; {Перевод на новую строку, чтобы при повторном запуске программы сформированный массив печатался на новой строке}
end.
Отметь решение, как лучшее
 
                                                Картинка
Объяснение:
На схеме цикл:
1) у = 2 * х - вычисляет у
2) выводит на экран значения х и у
3) х = х+1 - увеличивает значение х на 1
4) х <= 0 - проверяет условие (если да, то начинается сначала)
x = -5
y = 2 * -5 = -10
x = -5 y = -10
-4 <= 0 (да)
y = 2 * -4 = -8
x = -4 y = -8
-3 <= 0 (да)
y = 2 * -3 = -6
x = -3 y = -6
-2 <= 0 (да)
y = 2 * -2 = -4
x = -2 y = -4
-1 <= 0 (да)
y = 2 * -1 = -2
x = -1 y = -2
0 <= 0 (да)
y = 2 * 0 = 0
x = 0 y = 0
1 <= 0 (нет)
 
                                                 
                                                 
                                                 
                                                 
                                                 
                                                