// PascalABC.NET 3.2, сборка 1417 от 28.03.2017// Внимание! Если программа не работает, обновите версию!begin var a:=ArrRandom(ReadInteger('n='),-20,20); a.Println; Writeln(a[:a.IndexMax].Where(x->(x>=1) and (x<=12)).Count)end.
Примерn= 153 12 -1 10 -7 18 10 19 8 9 -2 4 0 19 134
А вот так учат писать эту же программу в школе...const nn=100;var a:array[1..nn] of integer; i,n,imax,k:integer;begin Randomize; Write('n='); Read(n); for i:=1 to n do begin a[i]:=Random(41)-20; Write(a[i],' '); end; Writeln; imax:=1; for i:=2 to n do if a[i]>a[imax] then imax:=i; k:=0; for i:=1 to imax do if (a[i]>=1) and (a[i]<=12) then k:=k+1; Writeln(k)end.
Вот отсюда и вопрос: для чего учить писать длинно, сложно и малопонятно?