Информационная панель робототехнического полигона содержит шестнадцать ярких светодиодов, каждый из которых можно включать и выключать отдельно. На панели находятся светодиоды трех цветов (см. Схему расположения светодиодов). Данную панель решили использовать для жеребьевки. В начале соревнования все светодиоды были выключены. Затем, на панели случайным образом зажгли один светодиод. Определите, сколько бит информации содержит сообщение, что на панели горит один зеленый светодиод.
var
number, N, npol, notr, n0, i: integer; {npol - количество положительных чисел, notr - количество отрицательных, n0 - количество нулей}
begin
writeln('Введите N');
readln(N);
for i:= 1 to N do
begin
writeln('Введите целое число');
readln(number);
if number < 0 then notr:= notr + 1;
if number > 0 then npol:= npol + 1;
if number = 0 then n0:= n0 + 1;
end;
writeln('Было введено ', notr, ' отрицательных чисел, ', npol, ' положительных чисел, ', n0, ' нулей');
end.
А для тестов ты просто вводишь числа и проверяешь, правильно ли нашлось количество.
begin
pos := 0;
neg := 0;
null := 0;
writeln('Введите N:');
readln(n);
writeln('Введите N целых чисел:');
for i := 1 to n do
begin
read(a);
if(a < 0) then neg := neg + 1;
if(a > 0) then pos := pos + 1;
if(a = 0) then null := null + 1;
end;
writeln('Положительных чисел: ', pos);
writeln('Отрицательных чисел: ', neg);
writeln('Нулей: ', null);
end.
Тестовые решения:
1)ввод
8
1 2 0 3 0 -5 -4 2
вывод
Положительных чисел: 4
Отрицательных чисел: 2
Нулей: 2
2)ввод
6
0 0 3 -5 0 22
вывод
Положительных чисел: 2
Отрицательных чисел: 1
Нулей: 3