Шаг 1.
В алфавите, согласно условию задачи, ровно 15 символов.
Шаг 2.
Давайте посмотрим, сколько нужно минимум выделить бит на 1 символ из алфавита, состоящего из 15 символов.
Если бы мы выделили 1 бит информации, то он бы смог закодировать 1 символ алфавита, состоящего не более чем из 2 символов. А у нас их 15 Значит, 1 бита мало.
Если выделить 2 бита, то закодировать можно символ в алфавите максимум из 4 символов. Мало.
Если выделить 3 бита, то закодировать можно символ в алфавите максимум из 8 символов. Мало.
Если выделить 4 бита, то закодировать можно символ в алфавите максимум из 16 символов. Достаточно.
Значит, для кодирования 1 символа данного алфавита достаточно 4 бит.
Шаг 3.
1 пароль состоит из 15-ти символов.
1 символ "весит" 4 бита.
Значит, 15 символов будут "весить" 15х4=60 бит.
Шаг 4.
1 пароль по условию кодируется минимально возможным целым количеством байт.
Сколько байт нужно для хранения пароля из 60 бит?
7 байт мало, так как 7 байт = 7х8 = 56 бит.
8 байт — в самый раз: 8 байт = 8х8=64 бита.
Следовательно, для хранения одного пароля нужно 8 байт.
Шаг 5
Один пароль "весит" 8 байт.
У нас — 20 пользователей (и 20 паролей соответственно).
Следовательно, они "весят" 8х20 = 160 байт.
Шаг 6
Выделено было 400 байт под пароли.
Чисто на хранение, согласно п.5, было использовать 160 байт.
Значит, осталось на дополнительную информацию300-160=140 байт.
Шаг 7
140 дополнительных байт имеется подо все пароли.
Всего паролей — 20.
Значит, под каждый дополнительно выделяется 140/20=7 байт.
ответ: по 7 байт дополнительно выделено для хранения одного пароля.
Объяснение:
Поделитесь своими знаниями, ответьте на вопрос:
Проверьте, достаточна ли для устойчивой передачи данных мощность передатчика в 40 дБм, если длина кабеля равна 60 км, погонное затухание кабеля составляет 0, 2 дБ/км, а порог чувствительности приемника равен 20 дБм.
//1
uses
GraphABC;
Var
a,h,x,y:integer;
c:char;
begin
writeln('Read or random? n/r');
repeat
readln(c);
until (c='n') or (c='r');
if c='r' then
begin
a:=random(200);
writeln('Длина ребра=',a,', Объём=',power(a,3));
end
else
begin
readln(a);
writeln('Объём=',power(a,3));
end;
x:=windowwidth div 2;
y:=round(windowheight*1/3);
line(x,y,x,y+a);
line(x+a,y,x+a,y+a);
line(x,y+a,x+a,y+a);
line(x+a div 2,y+a div 2,x+a div 2+a,y+a div 2);
line(x,y,x+a,y);
line(x+a div 2,y+a div 2,x+a div 2,y-a div 2);
line(x,y,x+a div 2, y-a div 2);
line(x,y+a,x+a div 2, y+a div 2);
line(x+a div 2, y-a div 2,x+a div 2+a,y-a div 2);
line(x+a div 2+a, y-a div 2,x+a,y);
line(x+a div 2+a,y-a div 2,x+a div 2+a,y-a div 2+a);
line(x+a div 2+a, y-a div 2+a,x+a,y+a);
end.
Пример ввода:
n
16
Пример вывода:
Объём=4096
//2
Var
X,P:integer;
beginwrite('X:');
readln(X);
write('P:');
readln(P);
if not(odd(X)) then writeln('Кратно 2');
if X mod 3=0 then writeln('Кратно 3');
if X mod P=0 then writeln('Кратно ',P);
end.
Пример ввода:
18
6
Пример вывода:
Кратно 2
Кратно 3
Кратно 6