Каждую букву можно закодировать какой-то последовательностью битов. Минимально количество битов, необходимых для кодирования всех букв таким образом, чтобы все последовательности различались хотя бы в одном бите, равно 3, так как 2^2<6<2^3 То есть одна буква несет 3 бита информации. Например, был алфавит а,б,в,г,д,е,ж Нельзя каждой букве сопоставить последовательность из 2 битов, поскольку максимально возможное количество таких последовательностей равно 2^2=4, что меньше 6. А вот 3 битами закодировать можно, например так: а - 000 б - 001 в - 010 г - 011 д - 100 е - 101 При этом еще останется неиспользованных две последовательности: 110 и 111. Алфавит можно кодировать и бОльшим количеством бит, но это делать незачем.
PROGRAM A23; const max = 42; var vt:array[1..max]of integer; i,n:byte; x:integer; num:integer;
BEGIN n := max; writeln('Массив из n элементов будет задан случайными числами на интервале [0..20].'); readln(n); writeln('Подсчитать количество положительных элементов больших чем указанное число.'); writeln('Введите число: '); readln(x); writeln(' ');
writeln('Начальный Массив' ); randomize;
num := 0; for i:=1 to n do begin vt[i]:=random(-512,512); write(vt[i], ' ');
if (vt[i]>0) then num:=num+1;
end; writeln(' ');
writeln('Найдено ', num,' положительных элементов больших чем ', x);
END.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку