Var
Pr: set of 1..20;
x: integer;
begin
Pr := [1, 2, 3, 5, 7, 11, 13, 17, 19];
writeln('Вводите целые числа от 1 до 20, выход по 99');
repeat
write('Число ');
readln(x);
if x < 21 then
if x in Pr then writeln('простое')
else writeln('не простое')
until x = 99
end.
Тестовое решение:
Вводите целые числа от 1 до 20, выход по 99
Число 18
не простое
Число 3
простое
Число 15
не простое
Число 23
Число 19
простое
Число 99
N=16
K=2048
16ти символьный авфавит это четыре знака например: 0000
i=4
множим символы на бит шифра.
2048×4=8192
Теперь считаем сколько килобайт весит сообщение
8192:8000=1.024
<span>Не важно, как кодируется один символ. Фактически в этом сообщении 3,95 бита информации. Но в несжатом виде на диске это сообщение займёт 44 * 16 / 8 = 44 * 2 = 88 байтов.
"Какое количество информации оно несет ?" - тут мы знать не можем, не имея перед собою это сообщение. Но можем такую же характеристику посчитать, как для предыдущего сообщения. Считаем число битов, нужных для 12-символьного алфавита:
log2(12) ~= 3,6, округляем вверх, итого 4 бита.
4 * 120 = 480 битов. Если учесть возможность записи по два 4-битовых символа в один байт, то получаем 60 байтов.</span>
25 Кб = 25 * 1024 байт = 25600 байт
25600 / 8 / 40 / 64 = 1.25 байт
1 байт = 8 бит
1.25 * 8 = 10
Ответ: один символ закодирован с помощью десяти бит