Решение № 6 из главы 15.Заполнить массив случайными числами, получить случайное число N от 1 до 9 и затем "удалить

Задача №6 из главы 15

Заполнить массив из 9 элементов случайными числами, далее получить случайное число N из диапазона от 1 до 9 и затем "удалить" удалить элемент с позиции N из массива, "сдвинув" значения влево и заполнив все что справа нулями.
Например:
|1|3|4|5|4|7|-8|-9|
Путь n=2, тогда после работы программы мы должны получить:
|1|4|5|4|7|-8|-9|0|

program pascal_array15_6;
var i , min , max ,rand_number : integer;
    arr : array[1..9] of integer;

begin // начало тела программы
min := 5;
max := 15; 
randomize();// вызов стандартной процедуры
for i := low(arr) to high(arr) do // обходим массив с целью иницилизации
begin
  arr[i] := min + random( max - min + 1 ); // формула случайных чисел
  write( arr[i] , ' ' );
end;
writeln(); // перенос строки для читаемости 
for i:= 1 to 1 do // определяем индекс массива для удаления  
begin
  rand_number := random( 9 ) + 1 ; //  определяем индекс от 1 до 9 по формуле
  writeln( 'Delete item with index : ' , rand_number ); // вывод индекса элемента
end;
for i := 1 to ( high(arr) - 1 ) do // обходим до предпоследнего элемента
begin
  if( i >= rand_number ) then // если индекс равен искомому индексу
    arr[i] := arr[ i + 1 ]; // сдвигаем влево путем увеличения индекса на 1 
end;
arr[high(arr)] := 0; // поседний элемент массива делаем равным 0
for i := 1 to  ( high(arr) ) do // обходим массив и выводим элементы
  write( arr[i] , ' ' );
    
end. // завершение тела программы  

vedro-compota's picture

перенести заполнение и сдвиг в отдельные подпрограммы

_____________
матфак вгу и остальная классика =)