2

2 задание ОГЭ информатика

Декодирование сообщения

1 балл ≈ 4 мин уровень Б Декодирование кодовой последовательности

Задание 2 – дана кодовая таблица (буквы и их коды из точек и тире, нулей и единиц или цифр) и сообщение, в котором пропали границы между буквами. Нужно восстановить текст. 1 балл, ответ – слово (набор букв) без пробелов.

Что важно знать

  • Равномерный код – все коды одной длины. Тогда просто режешь сообщение на куски этой длины.
  • Неравномерный код – коды разной длины. Если ни один код не является началом другого (это называется условие Фано, префиксный код), расшифровка однозначна: читаешь слева, и на каждом шаге подходит ровно одна буква.
  • Если условие Фано не выполняется (как у азбуки Морзе), на каком-то шаге подходят несколько букв. Тогда пробуешь варианты и отбрасываешь тот, что заходит в тупик.

Алгоритм

  1. Перепиши сообщение крупно, с промежутками между символами – так легче отсчитывать.
  2. Смотри на начало сообщения: какие коды из таблицы с него начинаются?
  3. Если подходит один код – отрезай его, записывай букву, продолжай с остатка.
  4. Если подходят несколько – выбери один, иди дальше; если упёрся (ни один код не подходит к остатку) – вернись и возьми другой.
  5. В конце сложи длины кодов – должна получиться длина всего сообщения.

Разобранный пример. А = 01, Б = 100, В = 101, Г = 110. Сообщение: 0110011001. Ни один код не начало другого – Фано выполнено.

  • 01 | 10011001 → А (с 0 начинается только А);
  • 100 | 11001 → Б;
  • 110 | 01 → Г;
  • 01 → А.

Ответ: АБГА. Проверка: 2 + 3 + 3 + 2 = 10 символов – совпадает.

Пример с выбором (как в демоверсии). Если коды А = •–, Ж = •••– и Т = –, то начало «•–…» может быть буквой А, а может оказаться началом другого кода. Пробуй вариант и смотри, удаётся ли разрезать остаток до конца.

Ловушки

  • Потерял символ при переписывании – вся расшифровка съедет. Сверяй количество символов.
  • Взял первый подходящий код и не проверил другие – в коде без Фано это часто ведёт в тупик.
  • Ответ пишут буквами из таблицы, без пробелов и запятых.
На экзамене
  • Отмечай карандашом вертикальные черточки между найденными кодами прямо в условии.
  • Сначала проверь условие Фано: если оно выполнено, вариантов выбора не будет вовсе.
  • Финальная проверка: сумма длин кодов букв = длина сообщения.
  • Зашифруй свой ответ обратно по таблице и сравни с исходной строкой.

Разобранные задания 2 из открытого банка ФИПИ

Пример 1 · код ФИПИ E305FA

От разведчика была получена следующая шифрованная радиограмма, переданная с использованием азбуки Морзе.

–   •   •   •   –   •   •   –   –   •   •   –   •   –   –

При передаче радиограммы было потеряно разбиение на буквы, но известно, что использовались только следующие буквы.

А

Д

Л

Т

Ж

•   –

–   •   •

•   –   •   •

–

•   •   •   –

Определите текст радиограммы. В ответе укажите буквы, которые встречаются в тексте радиограммы более одного раза.

Показать ответ и решение

Ответ: ДТ

Коды: А = • –, Д = – • •, Л = • – • •, Т = –, Ж = • • • –.

Идём по сообщению – • • • – • • – – • • – • – – слева направо: на каждом шаге подходит только один код (остальные противоречат продолжению), поэтому расшифровка единственна: ДЛТДТАТ.

Текст: ДЛТДТАТ. Более одного раза встречаются буквы: ДТ (в порядке появления).

Пример 2 · код ФИПИ 359113

Вася и Петя играли в шпионов и кодировали сообщения собственным шифром. Фрагмент кодовой таблицы приведён ниже.

Н

М

Л

И

Т

О

~

*

*@

@~*

@*

~*

Расшифруйте сообщение, если известно, что буквы в нём не повторяются.

*@@~**~*~

Запишите в ответе расшифрованное сообщение.

Показать ответ и решение

Ответ: ЛИМОН

Коды: Н = ~, М = *, Л = *@, И = @~*, Т = @*, О = ~*.

Сообщение *@@~**~*~ можно разбить так: ЛИМНМН, ЛИМОН. Без повторяющихся букв только ЛИМОН.

Пример 3 · код ФИПИ 8729B4

От разведчика была получена следующая шифрованная радиограмма, переданная с использованием азбуки Морзе.

•   –   –   –   •   •   –   –   •   •   •   •   •   –   –   •

При передаче радиограммы было потеряно разбиение на буквы, но известно, что в радиограмме использовались только следующие буквы.

М

Н

С

У

А

–   –

–   •

•   •   •

  • •   –

•   –

Определите текст радиограммы.

В ответе запишите получившееся слово (набор букв).

Показать ответ и решение

Ответ: АМУНСАН

Коды: М = – –, Н = – •, С = • • •, У = • • –, А = • –.

Идём по сообщению • – – – • • – – • • • • • – – • слева направо: на каждом шаге подходит только один код (остальные противоречат продолжению), поэтому расшифровка единственна: АМУНСАН.

Частые вопросы о задании 2

Сколько баллов даёт задание 2 ОГЭ по информатике?

Максимум – 1 первичный балл. Норма времени на экзамене – около 4 мин. Уровень сложности – Б.

Что проверяет задание 2?

Задание 2 – дана кодовая таблица (буквы и их коды из точек и тире, нулей и единиц или цифр) и сообщение, в котором пропали границы между буквами. Нужно восстановить текст. 1 балл, ответ – слово (набор букв) без пробелов.

Как подготовиться к заданию 2?

Прочитайте теорию выше: алгоритм, нужные факты и ловушки. Затем решите подход из 10 заданий с автопроверкой и разбором – первые без регистрации – и вернитесь к ошибкам. В пробниках Сотки номер встречается в полных вариантах ФИПИ с подсчётом баллов.

Упражнения к заданию 2

10 заданий подряд с проверкой и разбором · первые 7 – без регистрации