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.
// PascalABC.NET 3.1, сборка 1218 от 12.04.2016 begin var m,n:integer; Write('Количество строк и столбцов матрицы: '); Read(n,m); var a:=MatrixRandom(n,m,10,99); for var i:=0 to n-1 do begin for var j:=0 to m-1 do Print(a[i,j]); Writeln end; var p:=ReadInteger('Введите число Р:'); var b:array of integer; SetLength(b,4*m); var k:=0; for var i:=n-p to n-1 do for var j:=0 to m-1 do if a[i,j] mod 4=0 then begin b[k]:=a[i,j]; Inc(k) end; SetLength(b,k); b.Print end.