Var a,k: integer; y,l,s: real; begin writeln('введите ненулевое значение a: '); read(a); l: =-2.5; k: =0; s: =0; while l< =2.5 do begin y: =a*(1+l)/l; if y< 0 then begin inc(k); s: =s+y end; l: =l+0.52 end; writeln(k,' отрицательных значений с суммой ',s) end. тестовое решение: введите ненулевое значение a: -3.1 8 отрицательных значений с суммой -61.8798422368665
Maionova
03.06.2023
// pascalabc.net 3.3, сборка 1611 от 06.01.2018 // внимание! если программа не работает, обновите версию! // не знаю, есть ли какая то разница между векторами и массивами в паскале, поэтому написал с массивом begin var a: =readarrinteger('введите элементы вектора', 20); writeln('сумма положительных элементов -> ', a.where(t -> t > 0).sum); writeln('сумма отрицательных элементов -> ', a.where(t -> t < 0).sum); writeln('произведение суммы пложительных чисел на минимальный элемент -> ', a.where(t -> t > 0).sum * a.min); writeln('произведение суммы отрицательных чисел на минимальный элемент -> ', a.where(t -> t > 0).sum * a.min); writeln('сумма между min и последним элементом вектора -> ', a.where((v,i)-> i > a.indexmin).sum); a: = a[: 15]+a[16: ]; writeln(a); end.