Const n = 10; var a:array[1..n] of integer; i,k:integer; begin for i:=1 to n do begin a[i]:=random(41)-20; if a[i]<0 then k:=i; write(a[i]:4); end; writeln; writeln('Номер последнего отрицательного: ',k); end.
Тестовое решение: 16 20 2 -2 -15 -8 20 -4 3 4 Номер последнего отрицательного: 8
// PascalABC.NET 3.1, сборка 1204 от 24.03.2016 begin var a:=ArrRandom(ReadInteger('n='),-50,50); a.Println; var i:=a.Length-1; while (a[i]>=0) and (i>=0) do Dec(i); if i<0 then Writeln('Нет отрицательных элементов') else Writeln('i=',i+1) end.