Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

При регистрации в компьютерной системе каждому пользователю выдаётся пароль, состоящий из

Денис Тарарков Знаток (341), закрыт 9 лет назад
7 символов и содержащий только символы из 10-символьного набора: А, В, C, D, Е, F, G, H, К, L. В
базе данных для хранения сведений о каждом пользователе отведено одинаковое и минимально
возможное целое число байт. При этом используют посимвольное кодирование паролей, все
символы кодируют одинаковым и минимально возможным количеством бит. Кроме собственно
пароля, для каждого пользователя в системе хранятся дополнительные сведения, для чего
отведено 16 байт на одного пользователя. Определите объём памяти (в байтах), необходимый
для хранения сведений о 20 пользователях.
Лучший ответ
kaiu Высший разум (120229) 9 лет назад
10 символьный набор можно закодировать 4 битами, так как 2^3 < 10 < 2^4
7 символов для пароля по 4 бита = 28 бит или 28/8 = 4 байта точно надо для хранения
+ 16 байт для дополнительных сведений, итого 16+4 = 20 байт на одного пользователя
А нужно хранить 20 пользователей, потому 20*20 = 400 байт
valеra dПросветленный (38389) 9 лет назад
Можно короче, но тогда информация о пользователях не будет совпадать с границами байтов.
kaiu Высший разум (120229) Есть условие "базе данных для хранения сведений о каждом пользователе отведено одинаковое и минимально возможное целое число байт"
Максим МакеевУченик (140) 4 года назад
Для тебя в раю лучшее место приготовили уже????
Остальные ответы
Клыков Владимир Гуру (4080) 9 лет назад
(Round(7*4/8)+16)*20
kaiuВысший разум (120229) 9 лет назад
При 5 вышла бы ошибка, тогда уж лучше так
WriteLn( (Trunc(7*5/8)+17)*20 );
Клыков Владимир Гуру (4080) при 5 да, но тут то были написаны константы а не переменные =) а так да, ваше решение универсальней не спорю =)
Похожие вопросы