// PascalABC.NET 3.2, сборка 1344 от 22.11.2016
function CM(a:array of integer):real;
// среднее геометрическое элементов с четным значением, большим 10
begin
Result:=1;
var k:=0;
foreach var x in a do
if x.IsEven and (x>10) then begin Result*=x; k+=1 end;
if k>0 then Result:=Power(Result,1/k) else Result:=1
end;
begin
var C:=ArrRandom(10,1,30); C.Println;
Writeln(CM(C));
var M:=ArrRandom(10,1,30); M.Println;
Writeln(CM(M));
end.
Пример
13 26 18 28 8 30 15 29 21 5
25.039824738313
20 1 1 28 28 29 3 20 3 15
23.6643191323985