Дан массив, содержащий неотрицательные целые числа. Если сумма всех
элементов массива чётная, нужно вывести количество нечётных (по значению)
элементов массива, если нечётная – количество чётных.
Например, для массива из 6 элементов, равных соответственно 2, 6, 12, 17, 3, 8,
ответом будет 2 – количество нечётных элементов, так как общая сумма всех
элементов чётна.
Напишите на одном из языков программирования программу для решения этой
задачи. Исходные данные объявлены так, как показано ниже. Запрещается
использовать переменные, не описанные ниже, но разрешается не использовать
часть из описанных.
В качестве ответа Вам необходимо привести
фрагмент программы, который должен находиться
на месте многоточия.
Паскаль
Const N=2000;
Var a: array [1..N] of integer;
i, k: integer;
begin
for i:=1 to N do
readln(a[i]);
…
end.
Const N=2000;
Var a: array [1..N] of integer;
i, k: integer;
begin
for i:=1 to N do
readln(a[i]);
k:=0;
for i:=1 to N do
begin
if a[i] mod 2 = 1 then k:=k+1;
end;
if k mod 2 = 0 then writeln(k)
else writeln(N-k);
end.
Объяснение:
Значение суммы можно не вычислять, так как требуется только чётность суммы, а она однозначно определяется количеством нечётных элементов. Количество чётных элементов, если оно потребуется, можно вычислить, зная общее число элементов и количество нечётных.