Вставить после каждого положительного числа в одномерном массиве число 0 - Pascal

Узнай цену своей работы

Формулировка задачи:

Вставить после каждого положительного числа в одномерном массиве число 0

Решение задачи: «Вставить после каждого положительного числа в одномерном массиве число 0»

textual
Листинг программы
program laba7;
const nmax=100;
var a:array[1..nmax] of integer;
    n,i,j:integer;
begin
randomize;
repeat
write('Размер массива до ',nmax div 2,' n=');
readln(n);
until n in [1..nmax div 2];
writeln('Исходный массив:');
for i:=1 to n do
 begin
  a[i]:=-25+random(50);
  write(a[i]:4);
 end;
writeln;
i:=1;
while i<=n do
if a[i]>0 then
 begin
  inc(n);
  for j:=n downto i+2 do
  a[j]:=a[j-1];
  a[i+1]:=0;
  inc(i,2)
 end
else inc(i);
for i:=1 to n do
write(a[i]:4);
readln
end.

Объяснение кода листинга программы

Программа Lab7 написана на языке Pascal. Она выполняет следующие действия:

  1. Объявляет переменные: nmax, n, i, j, a (тип данных - array[1..nmax] of integer), где nmax - максимальное значение индекса массива, n - текущее значение размера массива, i, j - индексы массива, a - сам массив.
  2. Инициализирует генератор случайных чисел.
  3. Запрашивает у пользователя размер массива.
  4. Выводит на экран размер массива и исходный массив.
  5. Генерирует случайные значения для элементов массива.
  6. Проверяет каждый элемент массива. Если элемент больше нуля, то увеличивает значение n на единицу, копирует значения элементов под ним в следующий элемент, затем устанавливает значение текущего элемента равным нулю.
  7. Выводит на экран значения элементов массива.
  8. Повторяет шаги 5-7 до тех пор, пока значение n не станет равным nmax/2.
  9. Выводит на экран окончательное значение массива.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4 из 5
Похожие ответы