Для того, чтобы решить данную задачу, необходимо воспользоваться формулой N = 2^i, где N - максимальное количество цветов в палитре, а i - глубина цвета.
2^8 < 312 < 2^9
Если мы будем использовать глубину цвета равную 8 битам, то максимальное допустимое количество цветов в палитре будет равняться 256 (так как 2^8 = 256), что не удовлетворяет условиям задачи.
Значит, нам необходимо использовать глубину цвета равную 9 битам, так как при этом значении максимальное допустимое количество цветов в палитре будет равняться 512(так как 2^9 = 512), а значит для кодирования 312 цветов памяти хватит с избытком.
ответ: 9
begin
write('a = ');
readln(a);
k:=0; s:=0;
while a>0 do
begin
b:=a mod 10;
if (b=2)or(b=5) then begin k:=k+1; s:=s+b; end;
a:=a div 10;
end;
if k>0
then writeln('среднее арифметическое 2 и 5 =',s/k)
else writeln('2 и 5 нет');
end.
Пример:
a = 23454
среднее арифметическое 2 и 5 = 3.5