var i, s: integer; B: array [1..50] of integer; begin for i := 1 to 50 do B[i] := random(-100, 100); //Заполняем массив случайными числами. writeln(B);//Выводим массив на экран (для проверки). for i := 1 to 50 do //Пробегаемся по каждому элементы массива и...if (B[i] mod 2 = 1) and (B[i] > 0) then s := s + 1; // увеличиваем s, если элемент нечётный и >0. writeln(s); //Выводим s (сумму) на экран. end.
ответ: 9
Объяснение:
X=1i=1While i<4:x=x*2i=i+1x=x+1Изначально X = 1, i = 1. Потом идет цикл, который умножает x на 2 и увеличивает i на 1, пока выполняется условие (i<4). Получается:
i=1 x=1 i<4?ДА => x = x*2 = 1*2 = 2 i = i+1 = 1+1 = 2
i=2 x=2 i<4?ДА => x = x*2 = 2*2 = 4 i = i+1 = 2+1 = 3
i=3 x=4 i<4?ДА => x = x*2 = 4*2 = 8 i = i+1 = 3+1 = 4
i=4 x=8 i<4?НЕТ => ВЫХОД
x = x+1 = 8+1 = 9
или так:
PascalABC.NET beginvar a:= ArrRandom(5,-100,100);a.Println;a.Count(x->(x.IsOdd)and(x>0)).Printend.Примеры работ: