Дан целочисленный массив из n элементов. Элементы массива могут принимать неотрицательные целые значения до 10 000 включительно. Необходимо найти минимальный кратный 3 и минимальный кратный 5 элемент массива. Затем необходимо уменьшить каждый кратный 3 и кратный 5 на соответствующий им минимум. При этом кратные 15 должны быть уменьшены на сумму этих минимумов. В качестве результата необходимо вывести изменённый массив в строку. Например, для исходного массива из девяти элементов: 5 9 10 11 12 13 14 15 16 программа должна вывести следующий массив 0 0 5 11 3 13 14 1 16 (Минимальный кратный трём равен 9, минимальный кратный 5 равен 5. Все кратные трём уменьшены на 9, всё кратные пяти уменьшены на 5, все кратные пятнадцати уменьшены на 14)
handsfree = false;
var
a: array[1..100] of real;
i, n: integer;
sum_pos, sum_neg: real;
k_pos, k_neg: integer;
begin
{ввод массива}
if handsfree then
n := random(20) + 5
else begin
write('n = ');
readln(n);
end;
writeln('Данные массива:');
for i := 1 to n do
begin
if handsfree then begin
a[i] := random(100) - 50;
write(a[i], ' ');
end
else readln(a[i]);
end;
writeln();
{подсчет}
sum_pos := 0;
k_pos := 0;
sum_neg := 0;
k_neg := 0;
for i := 1 to n do
begin
if a[i] > 0 then
begin
sum_pos := sum_pos + a[i];
k_pos := k_pos + 1;
end;
if a[i] < 0 then
begin
sum_neg := sum_neg + a[i];
k_neg := k_neg + 1;
end;
end;
writeln('average (positives) = ', sum_pos / k_pos);
writeln('average (negatives) = ', sum_neg / k_neg);
end.