Вставить по одному элементу перед всеми элементами одномерного массива, кратными 5....

0 голосов
36 просмотров

Вставить по одному элементу перед всеми элементами одномерного массива, кратными 5.
Массив сформировать через датчик случайных чисел.


Информатика (712 баллов) | 36 просмотров
0

А что заносить в этот элемент? Или просто вставить и ничего не заносить?

Дан 1 ответ
0 голосов
Правильный ответ

Программа вставляет перед элементом, кратным 5, элемент со значением 99 (чтобы его было видно среди прочих из диапазона [1..50] )

const
  nm = 20;

var
  i, j, n, nn: integer;
  a: array[1..nm] of integer;

begin
  n := nm div 2;
  nn := n;
  Randomize;
  Writeln('*** Исходный массив ***');
  for i := 1 to n do
  begin
    a[i] := Random(50) + 1;  { [1..50] }
    Write(a[i]:3)
  end;
  for i := n downto 1 do
  begin
    if a[i] mod 5 = 0 then begin
      nn := nn + 1;
      for j := nn downto i do a[j] := a[j - 1];
      a[i] := 99
    end
  end;
  Writeln(#13#10, '*** Массив-результат ***');
  for i := 1 to nn do Write(a[i]:3);
  Writeln
end.

*** Исходный массив ***
 23 22 27 16 45 42 15 13 27 31
*** Массив-результат ***
 23 22 27 16 99 45 42 99 15 13 27 31



(142k баллов)