Const n=10; var a:array[1..n] of integer; i,s:integer; begin writeln('Исходный массив:'); for i:=1 to n do begin a[i]:=random(21)-10; write(a[i],' '); end; writeln; s:=0; for i:=1 to n do if a[i] mod 2 = 0 then s:=s+a[i]; writeln('s = ',s); end.
// PascalABC.NET 3.1, сборка 1201 от 18.03.2016 begin var a:=ArrRandom(ReadInteger('n='),1,99); a.Println; Writeln('Сумма четных ',a.Where(x->x.IsEven).Sum) end.
var a:array[1..n] of integer;
i,s:integer;
begin
writeln('Исходный массив:');
for i:=1 to n do
begin
a[i]:=random(21)-10;
write(a[i],' ');
end;
writeln;
s:=0;
for i:=1 to n do
if a[i] mod 2 = 0 then s:=s+a[i];
writeln('s = ',s);
end.
Пример:
Исходный массив:
5 -6 -7 2 3 5 -7 -2 -6 -5
s = -12
begin
var a:=ArrRandom(ReadInteger('n='),1,99); a.Println;
Writeln('Сумма четных ',a.Where(x->x.IsEven).Sum)
end.
Тестовое решение:
n= 15
40 88 6 42 57 56 80 78 71 56 73 91 74 19 95
Сумма четных 520