program spk;
var i,s,k:integer;
p:real;
a:array [1..10] of integer;
begin
for i:=1 to 10 do a[i]:=random(81)-30;
for i:=1 to 10 do write(a[i],' ');
for i:=1 to 10 do if i mod 2 = 0 then s:=s+a[i];
p:=1;
for i:=1 to 10 do if a[i] < 0 then p:=p*a[i];
for i:=1 to 10 do if a[i] mod 2 <> 0 then k:=k+1;
write('s = ',s,' p = ',p,' k = ',k);
end.
Объяснение:
program spk;
var a:array [1..10] of integer;
i,s,k:integer;
p:real;
begin
p:=1;
write('Массив: ');
for i:=1 to 10 do
begin
a[i]:=random(81)-30;
write(a[i],' ');
if i mod 2 = 0 then s:=s+a[i];
if a[i] < 0 then p:=p*a[i];
if a[i] mod 2 <> 0 then k:=k+1
end;
writeln;
writeln('Сумма элементов массива, с четными номерами, равна ',s);
writeln('Произведение отрицательных элементов равно ',p);
writeln('Количество нечётных элементов равно ',k)
end.
1
5
1
9
3
1
Объяснение:
Смотри картинку
Процедура F вызывается с параметром n = 9.
В ней находится вызов процедуры F с параметром n = 5.
Работа процедуры F с параметром n = 9 ещё не закончена, но продолжит своё выполнение только после завершения процедуры F с параметром n = 5.
В процедуре F с параметром n = 5 находится вызов процедуры F с параметром n = 1.
Работа процедуры F с параметром n = 5 ещё не закончена, но продолжит своё выполнение только после завершения процедуры F с параметром n = 1.
В процедуре F с параметром n = 1 мог бы находится вызов следующей процедуры F, но он не срабатывает, т.к. n должно быть больше 0.
Процедура F с параметром n = 1 выводит на печать значение n (n = 1).
В процедуре F с параметром n = 1 мог бы находится ещё один вызов следующей процедуры F, но он тоже не срабатывает, т.к. n должно быть больше 0.
Процедура F с параметром n = 1 завершается (больше нечего делать) и продолжает выполняться процедура F с параметром n = 5.
Процедура F с параметром n = 5 выводит на печать значение n (n = 5).
В процедуре F с параметром n = 5 находится ещё один вызов процедуры F с параметром n = 1.
Работа процедуры F с параметром n = 5 ещё не закончена, но продолжит своё выполнение только после завершения процедуры F с параметром n = 1.
В процедуре F с параметром n = 1 мог бы находится вызов следующей процедуры F, но он не срабатывает, т.к. n должно быть больше 0.
Процедура F с параметром n = 1 выводит на печать значение n (n = 1).
В процедуре F с параметром n = 1 мог бы находится ещё один вызов следующей процедуры F, но он тоже не срабатывает, т.к. n должно быть больше 0.
Процедура F с параметром n = 1 завершается (больше нечего делать) и продолжает выполняться процедура F с параметром n = 5.
Процедура F с параметром n = 5 завершается (больше нечего делать) и продолжает выполняться процедура F с параметром n = 9.
Процедура F с параметром n = 9 выводит на печать значение n (n = 9).
В процедуре F с параметром n = 9 находится ещё один вызов процедуры F с параметром n = 3.
Работа процедуры F с параметром n = 9 ещё не закончена, но продолжит своё выполнение только после завершения процедуры F с параметром n = 3.
И т.д.
div - целочисленное деление
2 div 2 = 1 целое и 0 остаток
3 div 2 = 1 целое и 1 остаток
берём целое
ответ = 0
Для I в массиве:
Если остаток от деления I на 2 равен 0:
ответ увеличить на 1
вывести ответ
на python выглядит так:
mas = list(map(int, input().split()))
otvet = 0
for i in mas:
if i%2 == 0:
otvet+=1
print(otvet)