Из массива удалить все элементы, которые меньше 0.составить программу в паскале,.

Щерсть Щерсть    2   06.09.2019 11:50    1

Ответы
КостяТрестьян КостяТрестьян  06.10.2020 21:09
Var
 a: array[0..99] of integer;
begin
  //заполняем массив случайными числами
  Randomize();
  for var i:=0 to 99 do a[i]:=random(-100,100);
 
  //а теперь заменяем все отрицательные элементы на ноль
  for var i:=0 to 99 do 
    if (a[i]<0) then a[i]:=0;
end.

Вот второй вариант программы, со вводом с клавиатуры и со сдвигом нулевых элементов в хвост массива
program pr_1;constn = 6;varA: array [1..n] of integer; n1: integer;
beginWrite('введите ');for i := 1 to n doread(A[i]);  n1:=n;  for var i:=n downto 1 do{в цикле просматриваем элементы массива}  begin    if A[i] < 0 then {проверяем, нужно ли удалять i-ый элемент}    begin{если нужно – удаляем i-ый элемент}      for var j := i to n1 - 1 do         A[j] := A[j + 1]; {сдвигаем}       A[n1]:=0;        Dec(n1); {уменьшаем количество элементов}    end;  end;  for var i:=1 to n1 do    write(A[i], ' ');end.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика