После выполнения программы выводится значение переменной n. Пока цикл выполняется, значение n увеличивается на 2, изначально n=0, то есть мы можем определить количество повторений цикла и умножить его на 2.
Цикл выполняется, пока s<111, изначально s=0, каждый повтор цикла s увеличивается на 8. То есть мы должны найти первое значение s, при котором условие перестанет выполняться.
Каждый повтор цикла значение s увеличивается на 8, значит s, в конечном итоге, будет кратно 8-ми. Наименьшее s, при котором условие цикла перестанет выполняться — 112.
Определим количество повторов цикла:
112:8 = 14
Каждый повтор цикла n увеличивается на 2, то есть значение n будет равно:
14*2 = 28
ответ: 28
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ArrRandom(15,-28,25); a.Println;
Writeln('П = ',a.Aggregate(BigInteger(1),(p,q)->p*q));
Writeln('Положительных элементов: ',a.Where(t->t>0).Count);
var imin:=a.IndexMin;
Writeln('Номер минимального элемента- ',imin+1,
', его значение равно ',a[imin])
end.
Пример
4 10 23 9 22 -6 -28 -24 20 -28 12 -18 10 -24 -21
П = -447760579166208000
Положительных элементов: 8
Номер минимального элемента- 7, его значение равно -28