Задание 5 ЕГЭ по информатике: формальное исполнение алгоритма
Задание 5 ЕГЭ по информатике (КЕГЭ) — это короткое текстовое описание алгоритма, который переводит число в двоичную (реже троичную или четверичную) запись, что-то приписывает или заменяет в этой записи по условию (чётность числа, остаток от деления, чётность суммы цифр), а затем переводит результат обратно в десятичную систему. Это задание базового уровня, за него дают 1 первичный балл, ответ — число в десятичной записи, файл к заданию не прикладывается. Раздел кодификатора — «Алгоритмы и программирование», проверяемый элемент содержания 3.3 («Формальное исполнение алгоритма»). Ловушка задания в том, что перебирать от единицы вручную долго и ненадёжно — нужных чисел может быть за сотню. В статье — разбор алгоритма по шагам, приём «стройте ответ с конца» вместо перебора, готовый шаблон кода на Python для полного перебора программой, разобранные реальные задания из открытого банка ФИПИ и типичные ошибки. Потренироваться можно на реальных заданиях 5 ЕГЭ по информатике онлайн — с мгновенной проверкой ответа.
Что проверяет задание 5 ЕГЭ по информатике
КЕГЭ по информатике — экзамен из 27 заданий с кратким ответом, без частей и без развёрнутых ответов: работа целиком проверяется автоматически. Задание 5 стоит в разделе «Алгоритмы и программирование» (девять заданий этого раздела дают 10 первичных баллов из 29) и проверяет проверяемый элемент содержания 3.3:
Ближайший экзамен — ЕГЭ 2027. Все числа в этой статье приведены по действующей спецификации ФИПИ 2026 года; проекты КИМ-2027 ФИПИ публикует в конце августа 2026 года, а структура работы не менялась с 2025 года.
| Параметр | Значение |
|---|---|
| Максимальный балл | 1 первичный, по принципу «всё или ничего» — полубаллов нет |
| Уровень сложности | Базовый (Б) — одно из 11 базовых заданий КЕГЭ |
| КЭС | 3.3 «Формальное исполнение алгоритма», раздел «Алгоритмы и программирование» |
| Форма ответа | Число в десятичной системе счисления |
| Прикреплённый файл | Не требуется |
| Специализированное ПО | Формально не требуется, но экзамен сдаётся за компьютером, и доступная среда программирования (Python, C++, Pascal, Java, C#) позволяет проверить или полностью перебрать ответ кодом |
| Рекомендуемое время | 4 минуты — примерное время выполнения задания по обобщённому плану варианта КИМ ЕГЭ (спецификация ФИПИ) |
| Связанные задания | Задания 6, 12 и 23 — тот же КЭС 3.3; задание 4 — тоже про системы счисления, но про кодирование и условие Фано |
Тренируйтесь на реальных алгоритмах
Задания ЕГЭ по информатике из открытого банка ФИПИ с мгновенной проверкой ответа. Решаем, ошибаемся, разбираем — бесплатно.
Как выглядит формулировка
Формулировка задания 5 почти всегда состоит из трёх частей: как построить двоичную (или другую) запись числа , как её обработать по условию, и какое число нужно найти — или . Вот реальные формулировки из открытого банка ФИПИ:
Как записывается ответ. Ответ на задание 5 — одно число в десятичной записи, обычно это прямо повторено в самом условии: «в ответе запишите это число в десятичной системе счисления». Никаких единиц измерения, никаких указаний основания («2» снизу писать не нужно), только цифры десятичной записи. Условие почти всегда даёт готовый пример работы алгоритма на одном числе — обязательно пересчитайте его вручную и сверьте перед тем, как применять правило к своему числу: если пример не сошёлся, вы неверно поняли формулировку, а не ошиблись в арифметике.
Обратите внимание на формулировку неравенства: «больше» () и «не меньше» () — это разные границы, и путаница между ними — частая причина неверного ответа на пограничном числе.
Теория: всё, что нужно для задания 5
Как устроен типовой алгоритм: три шага
Под разными формулировками в банке скрывается один и тот же каркас из трёх шагов:
- Число переводится из десятичной записи в другую систему счисления — чаще всего двоичную, реже троичную или четверичную.
- Полученная запись обрабатывается по правилу, которое обычно ветвится на 2 случая (иногда на 4): приписать цифры слева, справа или в середину; заменить первые/последние разряды; заменить каждый разряд на несколько других. Условие ветвления — чётность самого числа, остаток от деления на небольшое число, чётность суммы цифр записи.
- Получившаяся запись объявляется двоичной (троичной, четверичной) записью числа , и переводится обратно в десятичную.
Циклов и рекурсии здесь нет: правило применяется один или два раза и всё. Сложность не в логике, а в том, чтобы не ошибиться на переводах систем счисления и не перепутать разряды при редактировании записи.
Трассировка: таблица шагов
Прежде чем искать приём для больших чисел, обязательно прогоните алгоритм вручную на нескольких маленьких и сведите шаги в таблицу — так опечатка в правиле обнаруживается сразу, а не после десяти минут поиска. Возьмём правило «чётное число — слева приписывается 10, нечётное — слева приписывается 1 и справа 01» и построим трассировку для :
| N | bin(N) | чёт/нечёт | Правило | bin(R) | R |
|---|---|---|---|---|---|
| 1 | 1 | нечёт | 1 + запись + 01 | 1101 | 13 |
| 2 | 10 | чёт | 10 + запись | 1010 | 10 |
| 3 | 11 | нечёт | 1 + запись + 01 | 11101 | 29 |
| 4 | 100 | чёт | 10 + запись | 10100 | 20 |
| 5 | 101 | нечёт | 1 + запись + 01 | 110101 | 53 |
| 6 | 110 | чёт | 10 + запись | 10110 | 22 |
Уже на этой маленькой таблице видно главное наблюдение задания 5: растёт не монотонно и не пропорционально — у нечётных чисел запись длиннее на три разряда, у чётных на два, поэтому «соседние» по величине могут давать очень разные . Именно из-за этого перебор с единицы вручную ненадёжен, а нужен приём из следующего блока.
Главный приём: стройте ответ с конца
Искомое в заданиях банка бывает и 65, и 273 — перебирать вручную от единицы до трёхзначного числа на экзамене некогда, и почти гарантированно собьётесь со счёта. Правильный ход — обратный: не «перебираем — вдруг подойдёт», а «понимаем, каким должен быть результат , и возвращаемся к ».
Шаги приёма
- Определите, сколько разрядов должно быть в двоичной записи , чтобы выполнялось условие. Для этого сравните порог из условия с ближайшими степенями двойки: например, порог 516 лежит между и , значит запись из девяти разрядов заведомо мала (), а нужной длины — минимум десять разрядов.
- Зная, на сколько разрядов правило удлиняет запись (это число вы уже нашли в теоретическом блоке 1 — обычно оно разное для чётных и нечётных ), вычтите эту длину из нужной длины и получите минимальную длину записи для каждого случая ветвления.
- Возьмите наименьшее число нужной длины в каждой ветке (например, наименьшее семиразрядное нечётное число) — это и есть кандидат, а не число 1.
- Примените правило к кандидату по-настоящему и убедитесь, что условие правда выполняется: длины разрядов достаточно для превышения по разрядам, но конкретное значение может оказаться и меньше порога — тогда берите следующее число той же длины.
- Сравните кандидатов из всех веток ветвления (для чётных и нечётных отдельно) и выберите наименьший.
Этот приём не заменяет проверку — он лишь резко сужает область перебора: вместо «попробовать все числа от 1 до 300» вы проверяете 2–4 кандидата на границе. Полный разбор с числами — в примере 1 ниже.
Приписывание разряда справа — это умножение и сложение
Самое частое непонимание в задании 5 — недооценка того, насколько сильно меняет число дописывание цифры справа. В позиционной системе с основанием дописать одну цифру справа к числу — это не «прибавить », а:
А если справа дописываются две цифры подряд, число умножается на , а не на :
Для двоичной системы () это значит: приписать один бит справа — , приписать два бита справа — . Именно на этой формуле держится второй пример разбора ниже: там правило дважды приписывает по одному биту справа, и в сумме это — без единого перебора.
Важно: это правило работает только для приписывания справа. Приписывание слева устроено иначе — оно не умножает , а меняет его старшие разряды и почти всегда сильнее всего влияет на длину записи, а не на арифметику самого . Не путайте эти два случая: если в условии написано «слева», формула не применяется вообще, а нужен приём из блока 3 (анализ длины записи).
Полный перебор программой — самый надёжный путь на КЕГЭ
КЕГЭ сдаётся за компьютером, и среда программирования (Python, C++, Pascal, Java, C#) доступна на протяжении всего экзамена — не только для заданий с прикреплённым файлом. Задание 5 не требует спец. ПО по инструкции, но ничто не мешает буквально повторить шаги алгоритма из условия в коде и перебрать в цикле. Это надёжнее ручной трассировки на больших числах и почти не требует дополнительного времени.
Шаблон: переведите правило из условия построчно
def alg(n):
b = bin(n)[2:]
if n % 2 == 0:
b = '10' + b
else:
b = '1' + b + '01'
return int(b, 2)
print(min(n for n in range(1, 100000) if alg(n) > 516))Запустив этот код, получаем — тот же ответ, что и приёмом «с конца» в примере 1 ниже. Если вопрос задан про , а не , опишите функцией правило из своего варианта и переберите множество значений . Например, для правила «каждый разряд заменяется двумя: 0 → 00, 1 → 11» (четвёртая формулировка из списка выше) код выглядит так:
def alg(n):
return int(''.join(c * 2 for c in bin(n)[2:]), 2)
print(min(r for r in {alg(n) for n in range(1, 100)} if r > 63))Запустив этот код, получаем — тот же ответ, что и в эталоне банка для этого задания. Обратите внимание: функция здесь другая, чем в первом шаблоне, — под каждое правило из условия пишется своя функция, копировать чужую нельзя.
Практический совет: берите верхнюю границу перебора «с запасом» (100–1000 для , редко больше 1000 — числа в этом задании банка не бывают многозначными), это надёжнее, чем пытаться заранее вычислить точную границу. Код короче трассировки на бумаге и не ошибается в переносе разрядов.
Алгоритм решения задания 5
- Разберите правило по случаям. Выпишите каждую ветку условия отдельной строкой (чётное/нечётное, остаток от деления, чётность суммы цифр) и что именно приписывается или заменяется в каждой из них.
- Пересчитайте пример из условия. В правиле почти всегда дан готовый пример работы алгоритма — примените своё понимание правила к этому же числу и сверьте результат. Если не сошлось, вы неверно поняли формулировку, а не ошиблись в арифметике.
- Определите, как правило меняет длину записи — сколько разрядов добавляется или заменяется в каждой ветке. Это ключевое число для следующего шага.
- Сравните порог из условия с ближайшими степенями основания и определите минимальную длину записи , нужную для выполнения условия.
- Постройте ответ с конца: из нужной длины и известного удлинения на шаге 3 выведите минимальную длину для каждой ветки и возьмите наименьшее число такой длины как кандидата — не единицу.
- Проверьте кандидата и его соседей. Примените правило к кандидату по-настоящему; если условие ещё не выполнено, возьмите следующее число той же длины. На экзамене для проверки удобно открыть Python и буквально повторить шаги правила в коде, как в блоке выше.
- Перечитайте вопрос и запишите нужную переменную. Убедитесь, спрашивают или , «больше» или «не меньше», «минимальное» или «максимальное» — и запишите в бланк то число, о котором спрашивает вопрос, в десятичной системе счисления.
Доведите приём до автоматизма
Прорешайте 15–20 алгоритмов подряд — и построение ответа «с конца» перестанет требовать бумаги. Задания ЕГЭ по информатике из банка ФИПИ с проверкой ответа — на Repet.ai.
Примеры с разбором
Пример 1. Приписывание слева и справа одновременно
Пример задания
Реальное задание из открытого банка ФИПИ
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом: 1) Строится двоичная запись числа N. 2) Далее эта запись обрабатывается по следующему правилу: а) если число чётное, то к двоичной записи числа слева дописывается 10; б) если число нечётное, то к двоичной записи числа слева дописывается 1 и справа дописывается 01. Полученная таким образом запись является двоичной записью искомого числа R.
Например, для исходного числа 410 = 1002 результатом является число 2010 = 101002, а для исходного числа 510 = 1012 это число 1101012 = 5310. Укажите минимальное число N, после обработки которого с помощью этого алгоритма получается число R, большее чем 516. В ответе запишите это число в десятичной системе счисления.
Пример 2. Два приписывания справа — считаем формулой, а не перебором
Пример задания
Реальное задание из открытого банка ФИПИ
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом. 1) Строится двоичная запись числа N. 2) К этой записи дописываются справа ещё два разряда по следующему правилу: а) складываются все цифры двоичной записи числа N, и остаток от деления суммы на 2 дописывается в конец числа (справа). Например, запись 11100 преобразуется в запись 111001; б) над этой записью производятся те же действия — справа дописывается остаток от деления суммы её цифр на 2.
Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью искомого числа R. Укажите такое наименьшее число N, для которого результат работы данного алгоритма больше числа 77. В ответе это число запишите в десятичной системе счисления.
Пример 3. Вставка разряда в середину — не путать с приписыванием
Пример задания
Реальное задание из открытого банка ФИПИ
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом: 1) Строится двоичная запись числа N. 2) Далее эта запись обрабатывается по следующему правилу: а) если количество значащих цифр в двоичной записи числа чётное, то к этой записи в середину дописывается 1; б) если количество значащих цифр в двоичной записи числа нечётное, то запись не изменяется. Полученная таким образом запись является двоичной записью искомого числа R.
Например, для исходного числа 510 = 1012 результатом является число 1012 = 510, а для исходного числа 210 = 102 результатом является число 1102 = 610. Укажите минимальное число N, после обработки которого с помощью этого алгоритма получается число R, не меньшее, чем 26. В ответе запишите это число в десятичной системе счисления.
Типичные ошибки и ловушки
- Перебор с единицы вручную
Ответы в банке — не только маленькие числа: 65, 68, 96, 102, 192, 946. Перебирать все числа от 1 до сотен вручную на экзамене некогда, и легко сбиться со счёта. Стройте ответ с конца по длине записи или проверяйте кандидата программой.
- Не пересчитали пример из условия
Правило почти всегда сопровождается готовым примером применения. Если ваша трассировка на этом же числе не совпала — вы неверно поняли формулировку (например, перепутали «слева» и «справа»), и дальше решать нет смысла, пока пример не сойдётся.
- Забыли, что приписывание справа — это умножение
Дописать цифру справа — не «прибавить единицу», а . Если пропустить этот множитель, вся оценка границы окажется заниженной в несколько раз, и «удачный» перебор пойдёт не в ту сторону.
- Спутали, что спрашивают — N или R
Часть заданий банка просит найти вход , часть — результат . Формулировки очень похожи, а ответы — разные числа. Перечитайте последнее предложение условия перед тем, как записать ответ.
- Перепутали строгое и нестрогое неравенство
«Больше» () и «не меньше» () — разные границы. Пограничное значение, равное порогу, в первом случае не подходит, а во втором подходит. Ошибка на этом ровном месте стоит балла.
- Перепутали основание системы счисления
В части заданий алгоритм работает не с двоичной, а с троичной или четверичной записью. Формула приписывания справа тогда выглядит как или — умножение на 2 применяется только к двоичной записи.
- Не проверили соседей кандидата у самой границы
Оценка по длине записи находит область, где ответ может быть, но не гарантирует, что первое же число этой длины подойдёт. Иногда два-три числа подряд у границы всё ещё не дотягивают до порога, и настоящий ответ — следующее число. Всегда проверяйте кандидата и одно-два соседних числа применением правила «по-настоящему».
Как задание 5 связано с остальным экзаменом
КЕГЭ по информатике — 27 заданий с кратким ответом и максимум 29 первичных баллов, все проверяется автоматически, частей и развёрнутых ответов нет. Задание 5 занимает своё место в общей структуре так:
- оно входит в раздел «Алгоритмы и программирование» — девять заданий этого раздела (5, 6, 12, 16, 17, 23, 24, 25, 26) дают в сумме 10 первичных баллов;
- делит код кодификатора 3.3 с заданием 6 (алгоритмы управления исполнителями), заданием 12 (исполнитель с фиксированным набором команд) и заданием 13 (анализ хода исполнения алгоритма) — все четыре проверяют умение формально следовать правилу, только на разном материале;
- как и задание 4, требует свободного владения переводом чисел между системами счисления — эти два задания удобно готовить в связке;
- приём «полный перебор программой» из этой статьи — базовая техника, которая пригодится в заданиях 16, 17, 24, 25, 26 того же раздела: там тоже проще написать код, буквально повторяющий правило из условия, чем считать вручную.
План подготовки на 2 недели
Неделя 1 — читаем правило и строим трассировку
День 1–2: разберите 5–7 заданий на маленьких числах, строя полную таблицу трассировки (как в теоретическом блоке) для — это ставит привычку сверяться с примером из условия. День 3–4: потренируйтесь отдельно определять, на сколько разрядов удлиняется запись в каждой ветке правила — это число нужно для следующего шага. День 5–7: решите 10–15 заданий на числа среднего размера (двух- и трёхзначные ответы), каждый раз явно выписывая формулу приписывания как , если приписывание идёт справа.
Неделя 2 — строим ответ с конца и проверяем программой
День 1–3: отработайте приём «стройте ответ с конца» на заданиях с трёх- и четырёхзначными ответами — сначала оцените нужную длину записи , затем длину , и только потом проверяйте конкретные числа. День 4–5: напишите и запустите шаблон полного перебора на Python для 5–10 разных правил из банка — это лучшая проверка того, что вы верно разобрали все ветки условия. День 6–7: решайте задания на время без подглядывания в решение и сверяйте себя в тренажёре на заданиях из банка ФИПИ.
Проверьте себя на реальных заданиях
На Repet.ai собраны задания ЕГЭ по информатике из открытого банка ФИПИ. Решайте онлайн, проверяйте ответ мгновенно и разбирайте решение — бесплатно.
Часто задаваемые вопросы
Формальное исполнение алгоритма: по натуральному числу N строится его запись в другой системе счисления (чаще двоичной), запись обрабатывается по текстовому правилу из условия (приписывание или замена цифр в зависимости от чётности, остатка от деления и т. п.), а результат переводится обратно в десятичную запись R. В кодификаторе это элемент содержания 3.3, раздел «Алгоритмы и программирование».
1 первичный балл по принципу «всё или ничего»: ответ либо полностью совпадает с эталоном, либо задание оценивается в 0. Уровень сложности — базовый. Ответ — число в десятичной системе счисления, файл к заданию не прикладывается.
Постройте ответ с конца: сначала определите, сколько разрядов должно быть в двоичной записи результата R, чтобы выполнить условие (сравните порог из условия с ближайшими степенями 2). Затем, зная, на сколько разрядов правило удлиняет запись, найдите минимальную длину исходного числа N и проверьте наименьшее число этой длины — а не перебирайте с единицы.
Дописать цифру d справа к числу x в системе с основанием b — это x·b + d, а не «прибавить d». Если справа дописываются сразу две цифры, число умножается на b² и прибавляется двузначное число из этих цифр. Это правило работает только для приписывания справа — приписывание слева устроено иначе и меняет длину и старшие разряды записи.
Да. КЕГЭ сдаётся за компьютером, и среда программирования (Python, C++, Pascal, Java, C#) доступна на протяжении всего экзамена, а не только для заданий с прикреплённым файлом. Достаточно повторить в коде шаги правила из условия и перебрать N в цикле — это надёжнее ручной трассировки на больших числах.
Все четыре задания проверяют умение формально следовать алгоритму, но на разном материале: задание 5 — перевод числа в другую систему счисления и обработка записи, задание 6 — работа исполнителя, управляющего объектами по командам, задание 12 — исполнитель с фиксированным набором собственных команд, задание 13 — более длинный алгоритм с ветвлениями и циклами, который нужно проанализировать по шагам.
Нет. Условие задания 5 прямо требует записать ответ в десятичной системе счисления, поэтому в бланк вносится обычное число без указания основания и без единиц измерения — только цифры.
Тот же метод, но с другим основанием: формула приписывания справа принимает вид x·3 + d или x·4 + d вместо x·2 + d, а границы длины записи сравниваются со степенями тройки или четвёрки вместо степеней двойки. Логика решения не меняется — меняется только основание в формулах.
Готовы взять базовый балл без ошибок?
Задание 5 — база КЕГЭ, где решает не удача, а один приём: стройте ответ с конца вместо перебора и проверяйте кандидата программой. Отработайте это на реальных заданиях из открытого банка ФИПИ с мгновенной проверкой ответа.