Во-первых нам нужны только четное количество цифр в двоичном числе, если учесть максимальное 25160=110001001001000, т.е. мы идем от 2 до 14 цифр через 2.
1 цифра всегда единица. значит остается n нулей и n-1 единиц. Теперь по формуле перестановки с повторениями(можешь почитать в инете), вычисляем последовательно:
1) 2 цифры = 1 вариант
2) 4 цифры = 3 варианта
3) 6 цифры = 10 варианта
4) 8 цифры = 35 варианта
5) 10 цифры = 126 варианта
6) 12 цифры = 462 варианта
7) 14 цифры = 1716 варианта
сложим и получим 2353 варианта.
Внимание! Если программа не работает, обновите версию!
№1
begin
var a:=ArrRandom(ReadInteger('n='),-50,50); a.Println;
Writeln('Количество отрицательных значений ',a.Where(t->t<0).Count);
end.
Пример
n= 15
3 39 3 2 43 43 -37 -2 -50 3 -25 15 -7 4 21
Количество отрицательных значений 5
№2
begin
var (m,n):=ReadInteger2('Количество строк и столбцов в массиве:');
Writeln('*** Исходный массив ***');
var a:=MatrRandom(m,n,-99,99);
a.Println(4); Writeln(4*a.ColCount*'-');
var k:=ReadInteger('k=');
if a.ElementsByRow.Any(t->t>k) then Writeln('Есть')
else Writeln('Нет')
end.
Пример
Количество строк и столбцов в массиве: 5 8
*** Исходный массив ***
-9 48 -98 -35 -33 -29 44 -32
-33 -48 -62 11 45 53 52 90
-96 -1 68 -21 15 -72 -78 -28
44 15 -53 -33 -27 89 -60 -49
28 -73 -99 81 23 -9 -93 -66
k= 92
Нет