По Хаффману:
а кодировать 0 - 1 бит
м кодировать 10 - 2 бита
б кодировать 11 - 2 бита
var
f: integer;
begin
write('Сколько дней: ');
readln(f);
writeln('Полных недель: ', f div 7);
writeln('Полных месяцев (берем месяц 30 дней): ', f div 30);
end.
Const n=12;
a:array[1..n] of integer=(5,4,-3,1,0,-4,7,25,-8,-5,-17,-1);
var i:integer;
begin
for i:=1 to n do write(a[i]:4);
writeln;
for i:=1 to n do
if a[i]<0 then a[i]:=1
else if a[i]>0 then a[i]:=-5;
for i:=1 to n do write(a[i]:4);
end.
Результат:
<span> 5 4 -3 1 0 -4 7 25 -8 -5 -17 -1
-5 -5 1 -5 0 1 -5 -5 1 1 1 1</span>
1) 2^15<65000<2^16 ----> 16 бит для одного цвета
2) 16 : 8 =2 уменьшение в два раза (ответ 4)
Дело в том, что любые действия человек совершает не из ничего, а из имеющейся у него информации. Человек может действовать только в соответствии с тем, что он знает — иначе из чего он создаст свои действия? Элементарный пример: чтобы ребенок научился говорить на русском языке, он должен вначале русский язык услышать от тех, кто уже на нем говорит. Иначе нет никаких шансов, что он изобретет весь русский язык сам, с нуля.