Напишите программу,которая в последовательности целых чисел определяет 1.количество четных отрицательных чисел 2.среднее арифметическое нечётных чисел программа получает на вход целые числа, количество введёных чисел неизвестно,последовательность чисел заканчивается числом 0(0- признак окончания ввода,не входит в последовательность.
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ReadSeqIntegerWhile(i->i<>0).ToArray;
Writeln('Четных отрицательных ',a.Where(i->(i<0) and i.IsEven).Count,
', ср.арифм. нечетных ',a.Where(i->i.IsOdd).Average:0:3)
end.
Пример
3 -4 2 -5 6 -1 7 -2 0
Четных отрицательных 2, ср.арифм. нечетных 1.000
begin
writeln('Вводите целые числа. Конец ввода - 0');
k1:=0;
k2:=0;
s:=0;
readln(a);
while a<>0 do
begin
if (a mod 2 = 0)and(a<0) then k1:=k1+1;
if a mod 2 <> 0 then begin k2:=k2+1; s:=s+a; end;
readln(a);
end;
writeln('количество четных отрицательных чисел = ',k1);
if k2>0
then writeln('среднее арифметическое нечётных чисел = ',s/k2)
else writeln('в последовательности нет нечётных чисел');
end.
Пример:
Вводите целые числа. Конец ввода - 0
18
-45
10
-62
70
0
количество четных отрицательных чисел = 1
среднее арифметическое нечётных чисел = -45