ЕГЭ 2027 · Информатика
Задание 11 ЕГЭ по информатике
Что проверяет линия, сколько она стоит, на чём теряют баллы и как решать — по нашим конспектам. В банке 200+ заданий этой линии с разбором.
Аналитика ЕГЭ: №7, №11 (кодирование, алфавитный подход к объёму)
- Баллы
- по 1 первичному баллу за каждое
- Частота
- в каждом варианте
Частые ловушки
- Берут неминимальную разрядность: нужно ⌈log₂N⌉ бит с округлением вверх
- Путают, что кодируется — один символ или всё сообщение
Совет. Разрядность = наименьшее i, при котором 2i ≥ N; объём = длина сообщения × разрядность.
Аналитика ЕГЭ: №11 (информационный объём текстового сообщения)
- Баллы
- 1 первичный балл
- Частота
- в каждом варианте
Частые ловушки
- Путают биты и байты: делят на 8 не там, где нужно
- Округляют i = log₂N вниз: если алфавит 300 символов, нужно 9 бит, а не 8
- Переводят байты в Кбайты делением на 1000 вместо 1024
- Забывают, что в тексте считаются все символы, включая пробелы и знаки препинания
- В UTF-8 считают все символы одинаковыми: латиница там 1 байт, кириллица 2 байта
Совет. Две формулы решают почти всё: i = ⌈log₂ N⌉ (бит на символ) и V = K · i (объём текста из K символов). Обратные задачи решаются теми же формулами «справа налево»
Разборы
Разбор примера
Прямая задача: объём текста в двухбайтной кодировке
Статья содержит 3072 символа, каждый символ кодируется двумя байтами. Сколько Кбайт занимает статья?
Показать решение по шагам
- 1. Шаг 1. Вес одного символа задан прямо: 2 байта (16 бит). Логарифм считать не нужно.
- 2. Шаг 2. Объём всего текста в байтах: 3072 · 2 = 6144 байта.
- 3. Шаг 3. Переводим в Кбайты: 6144 / 1024 = 6 Кбайт.
- 4. Проверка: 1 Кбайт вмещает 1024 байта, то есть 512 двухбайтных символов; 3072 / 512 = 6 ✔
Ответ: 6 Кбайт
Разбор примера
Обратная задача: найти мощность алфавита
Сообщение занимает 1,5 Кбайт и содержит 3072 символа. Какова минимально возможная мощность алфавита, которым записано сообщение?
Показать решение по шагам
- 1. Шаг 1. Приводим объём к битам: 1,5 Кбайт = 1,5 · 1024 = 1536 байт; 1536 · 8 = 12 288 бит.
- 2. Шаг 2. Находим вес одного символа: i = V / K = 12 288 / 3072 = 4 бита.
- 3. Шаг 3. Из формулы i = log₂ N получаем N = 2ⁱ = 2⁴ = 16 символов.
- 4. Шаг 4. Проверяем разумность: алфавит из 16 символов — это, например, 10 цифр и 6 букв. Правдоподобно ✔
- 5. Обрати внимание на порядок действий: сначала всё в биты, потом деление на число символов, и только затем возведение двойки в степень. Если пропустить перевод в биты, ответ окажется в 8 раз меньше.
Ответ: 16 символов
Разбор примера
UTF-8: текст из символов разного веса
Текст содержит 200 русских букв и 300 латинских букв и цифр. Определите объём текста в кодировке UTF-8.
Показать решение по шагам
- 1. Шаг 1. Главное свойство UTF-8: вес символа не одинаков. Латинские буквы, цифры и знаки препинания занимают 1 байт, кириллица — 2 байта, а иероглифы и многие символы — 3 или 4 байта.
- 2. Шаг 2. Именно этим UTF-8 отличается от кодировок с фиксированной длиной. В ASCII любой символ занимает 1 байт, но кириллицы там нет вовсе; в UTF-16 любой символ занимает 2 байта, включая латиницу, — для английского текста это вдвое расточительнее.
- 3. Шаг 3. Считаем русские буквы: 200 · 2 = 400 байт.
- 4. Шаг 4. Считаем латинские буквы и цифры: 300 · 1 = 300 байт.
- 5. Шаг 5. Складываем: 400 + 300 = 700 байт.
- 6. Шаг 6. Сравним с другими кодировками. В UTF-16 весь текст занял бы 500 · 2 = 1000 байт. В однобайтной кодировке вроде Windows-1251 — 500 · 1 = 500 байт, но такая кодировка вмещает только 256 символов и не может хранить, скажем, греческий алфавит вместе с кириллицей.
- 7. Шаг 7. Отсюда и практический вывод, который любят проверять: для текста преимущественно на латинице UTF-8 экономнее UTF-16, для текста на кириллице — они примерно равны, а для иероглифов UTF-8 даже расточительнее.
- 8. Шаг 8. Типичная ошибка этого типа задач — умножить общее число символов на средний вес. Так делать нельзя: считать надо по группам и складывать. При 200 русских и 300 латинских «средний вес 1,5 байта» дал бы 750 байт вместо 700.
- 9. Шаг 9. И ещё одна деталь: в объём текста обычно не включают служебные символы вроде перевода строки, если условие о них не говорит. Если же сказано «текст состоит из 20 строк по 40 символов», перевод строки может учитываться отдельно — читайте формулировку.
Ответ: 700 байт
Разбор примера
Обратная задача: найти мощность алфавита по объёму
Текст из 1024 символов занял 1,125 Кбайта. Все символы кодируются одинаковым и минимально возможным числом бит. Какова наибольшая возможная мощность алфавита?
Показать решение по шагам
- 1. Шаг 1. Переводим объём в биты. 1,125 Кбайта — это 1,125 · 1024 = 1152 байта, а в битах 1152 · 8 = 9216 бит.
- 2. Шаг 2. Делим на число символов: 9216 : 1024 = 9 бит на символ. Деление сошлось нацело — это хороший признак: в задачах алфавитного подхода вес символа всегда целый.
- 3. Шаг 3. Мощность алфавита: девять бит дают 2⁹ = 512 различных кодов, и столько же может быть символов.
- 4. Шаг 4. Почему «наибольшая возможная». Девяти бит хватит и на алфавит из 400 символов, и из 500. Формула даёт верхнюю границу, потому что по объёму восстанавливается только длина кода, а не то, сколько кодов использовано на самом деле.
- 5. Шаг 5. Проверка прямым ходом: алфавит из 512 символов требует ⌈log₂512⌉ = 9 бит; 1024 символа по 9 бит дают 9216 бит = 1152 байта = 1,125 Кбайта ✔
- 6. Шаг 6. Частая ошибка — забыть про множитель 8 и получить 1152 : 1024 = 1,125 бита на символ. Дробное число бит сразу выдаёт ошибку: столько не бывает. Дробный результат в этой формуле всегда означает потерянный перевод единиц.
- 7. Шаг 7. Ещё одна ловушка — принять 1,125 Кбайта за 1125 байт. Килобайт это 1024 байта, поэтому 1,125 Кбайта равны 1152 байтам. Разница невелика, но ответ она меняет: 1125 · 8 / 1024 даёт 8,79 бита, и целого числа не получается — что опять-таки сигнализирует об ошибке.
Ответ: 512 символов
Разбор примера
Сколько страниц текста поместится на носитель
Страница текста содержит 32 строки по 64 символа. Каждый символ кодируется одним байтом. Сколько таких страниц поместится на носителе объёмом 1 Мбайт?
Показать решение по шагам
- 1. Шаг 1. Символов на странице: 32 · 64 = 2048.
- 2. Шаг 2. Объём страницы: 2048 символов · 1 байт = 2048 байт = 2 Кбайта. Круглое число — хороший признак: в задачах этого типа числа подбирают так, чтобы всё делилось нацело.
- 3. Шаг 3. Объём носителя в тех же единицах: 1 Мбайт = 1024 Кбайта.
- 4. Шаг 4. Делим: 1024 : 2 = 512 страниц.
- 5. Шаг 5. Проверка обратным ходом: 512 страниц по 2 Кбайта занимают 1024 Кбайта = 1 Мбайт ✔
- 6. Шаг 6. Вариант с двухбайтной кодировкой. Если бы каждый символ занимал 2 байта, страница весила бы 4 Кбайта, и поместилось бы 256 страниц — ровно вдвое меньше. Объём прямо пропорционален весу символа, поэтому такие вопросы решаются без пересчёта.
- 7. Шаг 7. Вариант с палитрой символов. «Алфавит содержит 100 символов» означает ⌈log₂100⌉ = 7 бит на символ, и страница занимает 2048 · 7 = 14 336 бит = 1792 байта = 1,75 Кбайта. Тогда на мегабайт поместится 1024 : 1,75 = 585,1, то есть 585 страниц с округлением вниз.
- 8. Шаг 8. Обратите внимание, что в последнем варианте деление не сошлось нацело, и часть места осталась неиспользованной. Это нормально: округление вниз в вопросе «сколько поместится» отражает физический смысл — неполная страница не считается.
- 9. Шаг 9. И общая ловушка всех задач про текст: не путайте символы и байты. «Страница из 2048 символов» и «страница объёмом 2048 байт» — разные вещи, совпадающие только при однобайтной кодировке.
Ответ: 512 страниц
Уроки по этой линии
- Алфавитный подход и объём данных
- Объём текста: алфавитный подход, ASCII, Unicode, UTF-8 — открыт бесплатно
Потренируй задание 11
Задания этой линии с проверкой и разбором решения — после бесплатной регистрации. Ошибки сами попадут в план повторения.