Задание 11. Информатика. ЕГЭ. Поляков-263
- Просмотры: 27
- Изменено: 19 апреля 2025
В школьной базе данных хранятся записи, содержащие информацию об учениках:
- <Фамилия> – \(16\) символов: русские буквы (первая прописная, остальные строчные),
- <Имя> – \(12\) символов: русские буквы (первая прописная, остальные строчные),
- <Отчество> – \(16\) символов: русские буквы (первая прописная, остальные строчные),
- <Год рождения> – числа от \(1992\) до \(2003.\)
Каждое поле записывается с использованием минимально возможного количества бит. Определите минимальное количество байт, необходимое для кодирования одной записи, если буквы «е» и «ё» считаются совпадающими.
Решение:
Если считать буквы «е» и «ё» совпадающими, то тогда в русском алфавите \(32\) буквы. Для кодирования одной буквы из русского алфавита без учёта регистра понадобится \(\log_2 32 = 5\) бит. Так как расположение в имени, отчестве и фамилии прописных и строчных букв заранее известно, можно использовать отдельную кодировку как для строчных, так и прописных букв. Значит для хранения фамилии ученика нужно \(16 \cdot 5 = 80\) бит памяти, для хранения имени — \(12 \cdot 5 = 60\) бит памяти и для хранения отчества — \(16 \cdot 5 = 80\) бит памяти. Далее, чисел от \(1992\) до \(2003\) всего \(2003 - 1992 + 1 = 12.\) Для их кодирования потребуется \(\lceil \log_2 12 \rceil = 4\) бита. Окончательно, для кодирования одной записи в базе данных нужно \( (80 + 60 + 80 + 4) / 8 = 28\) байт.
Ответ: \(28\)