Замечание: предполагается, что в массиве есть хотя бы по одному элементу, удовлетворяющему заданным условиям поиска.
// PascalABC.NET 3.3, сборка 1555 от 21.10.2017
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ArrRandom(12,-20,30); a.Println;
Write('Положительные элементы, кратные 3: ');
a.Where(x->(x>0) and (x mod 3=0)).Println;
Writeln('Номер первого элемента, большего 10: ',
a.IndexesOf(x->x>10).Take(1).First+1);
Writeln('Последний отрицательный четный элемент ',
a.Where(x->x.IsEven and (x<0)).Last)<br>end.
Пример
-12 28 14 -15 10 21 7 -13 30 20 -19 26
Положительные элементы, кратные 3: 21 30
Номер первого элемента, большего 10: 2
Последний отрицательный четный элемент -12