ЕГЭ по информатике 2022 — Задание 12 (Вперёд, к Победе!)
Сегодня научимся решать 12 задание из ЕГЭ по информатике 2022.
В основном 12 задание решается шаблонно с помощью Питона, но есть и задачи, в которых нужен особый подход.
Перейдём к классической задачке из ЕГЭ по информатике 2022.
Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки символов.
1. заменить (v, w)
2. нашлось (v)
Первая команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Если цепочки v в строке нет, эта команда не изменяет строку. Вторая команда проверяет, встречается ли цепочка v в строке исполнителя Редактор. Дана программа для исполнителя Редактор:
Какая строка получится в результате применения приведённой выше программы к строке, состоящей из 239 идущих подряд цифр 6? В ответе запишите полученную строку.
Решим задачу с помощью программы на Python’е.
Здесь в начале формируется строка, состоящая из 239 шестёрок. Потом эта строка подаётся в программу. Программу переводим с русского языка на язык Питон.
Третий параметр в функции replace обозначает, что замену нужно производить один раз. Это в точности соответствует предложенной функции заменить.
Ответ получается 2266.
Ответ: 2266
В следующей типовой задаче из ЕГЭ по информатике 2022 нужно сообразить один момент.
Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр.
1. заменить (v, w)
2. нашлось (v)
Первая команда заменяет в строке первое слева вхождение цепочки v на цепочку w, вторая проверяет, встречается ли цепочка v в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Дана программа для исполнителя Редактор:
На вход приведённой ниже программе поступает строка, содержащая 50 цифр 1, 50 цифр 2 и 50 цифр 3, расположенных в произвольном порядке. Запишите без разделителей символы, которые имеют порядковые номера 10, 90 и 130 в получившейся строке.
Здесь сказали, что начальный порядок цифр в строке неизвестен. А просят написать конкретные данные на выходе. Отсюда делаем вывод, что любой порядок в начале приводит к одному и тому же результату.
В строке заведём цифры по порядку: в начале единицы, потом двойки, потом тройки.
Чтобы обратится к конкретному символу в строке, используем конструкцию s[позиция символа]. Но нумерация начинается с нуля.
В ответе запишем 132.
В следующей примерной задаче из ЕГЭ по информатике 2022 опять используем Питон.
Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки символов.
1. заменить (v, w)
2. нашлось (v)
Первая команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Если цепочки v в строке нет, эта команда не изменяет строку. Вторая команда проверяет, встречается ли цепочка v в строке исполнителя Редактор. Дана программа для исполнителя Редактор:
Известно, что исходная строка содержала более 70 единиц и не содержала других цифр. Укажите минимально возможную длину исходной строки, при которой в результате работы этой программы получится строка, содержащая максимально возможное количество единиц.
Здесь мы попробуем с помощью программы формировать строчки с разной длиной и смотреть, какое количество единиц получится на выходе.
Посмотрев результаты, понимаем, что максимальное количество единиц в окончательной строке равно 4. А минимальное количество единиц в изначальной строке, чтобы получилось в итоге 4 единицы, равно 73.
Ещё один частый гость в тренировочных вариантах из ЕГЭ по информатике 2022.
Задача (Сумма цифр + непонятный символ)
Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр.
1. заменить (v, w)
2. нашлось (v)
Первая команда заменяет в строке первое слева вхождение цепочки v на цепочку w, вторая проверяет, встречается ли цепочка v в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Дана программа для исполнителя Редактор:
На вход приведённой ниже программе поступает строка, начинающаяся с символа «>», а затем содержащая 28 цифр 1, 18 цифр 2 и 35 цифр 3, расположенных в произвольном порядке. Определите сумму числовых значений цифр строки, получившейся в результате выполнения программы. Так, например, если результат работы программы представлял бы собой строку, состоящую из 50 цифр 4, то верным ответом было бы число 200.
Здесь снова результат будет одним и тем же независимо от того, как будут расположены числа в начале.
Чтобы найти сумму цифр, мы пробегаем по всей строке с помощью цикла range. Если символ не равен «>», то превращаем его в число с помощью функции int() и суммируем в переменную sm.
Задача (Трудно запрограммировать)
Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр.
1. заменить (v, w)
2. нашлось (v)
Первая команда заменяет в строке первое слева вхождение цепочки v на цепочку w, вторая проверяет, встречается ли цепочка v в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Дана программа для исполнителя Редактор:
Исходная строка содержит 23 единицы и 5 двоек, других цифр нет, точный порядок расположения цифр неизвестен. Какую наибольшую сумму цифр может иметь строка, которая получится после выполнения программы?
Здесь не важно, по какой ветке будет идти программа, прирост в сумме цифр будет всегда равен 1. Поэтому можно расположить в начале только 1, а затем все двойки в исходной строке.
Одиннадцать раз символы ’11’ превратятся в ‘3’. Тогда 11 * 3 = 33. Останутся цифры ‘122222’. Их сумма равна 11.
В ответе получается 33 + 11 = 44.
Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр.
1. заменить (v, w)
2. нашлось (v)
Первая команда заменяет в строке первое слева вхождение цепочки v на цепочку w, вторая проверяет, встречается ли цепочка v в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Дана программа для исполнителя Редактор:
Известно, что начальная строка начиналась с нуля, а далее содержала только единицы и двойки. После выполнения данной программы получилась строка, содержащая 40 единиц и 64 двойки. Сколько двоек было в исходной строке ?
Посмотрим, во что превращается 1:
Посмотрим, во что превращается 2:
Т.е. в окончательном результате двойки могли возникнуть только из 1. Двоек получается в два раза больше, чем было изначально единиц.
Получается, что изначальное количество единиц равно 64 / 2 = 32. Эти 32 единицы так же принесли 32 единицы. Всего 40 единиц стало. Значит, ещё 8 единиц получилось в результате преобразования 02 -> 10. Т.е. двоек будет 8.
Теперь попробуем решить задачу с помощью программы. Здесь неизвестно количество единиц и двоек. Поэтому придётся создавать вложенные циклы. Предположим, что количество единиц и двоек меньше 100, чтобы программа отработала за адекватное время.
Получается количество двоек равно восьми.
Решим задачу про Робота, которая в последнее время редко встречается на экзамене по информатике.
Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости, состоит из 8 команд. Четыре команды — это команды-приказы:
| вверх | вниз | влево | вправо |
При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответственно: вверх , вниз , влево , вправо .
Четыре команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится РОБОТ:
| сверху свободно | снизу свободно | слева свободно | справа свободно |
В конструкциях ПОКА и ЕСЛИ условие может содержать команды проверки, а также слова И, ИЛИ, НЕ, обозначающие логические операции.
Если РОБОТ начнёт движение в сторону находящейся рядом с ним стены, то он разрушится и программа прервётся.
Сколько клеток лабиринта соответствуют требованию, что, начав движение в ней и выполнив предложенную программу, РОБОТ уцелеет и остановится в закрашенной клетке (клетка F6)?
![]() |
Проанализируем внимательно программу для Робота.
В программе есть главный цикл, внутри цикла проверяется сначала возможность двигаться вправо. Если есть такая возможность, робот будет двигаться до упора с помощью ещё одного цикла. Потом после того как больше нет возможности двигаться вправо, с помощью основного цикла и записанного условия будет перемещаться вниз, пока есть такая возможность.
Если нет возможности двигаться ни вправо, ни вниз, то Робот завершает программу.
Поняв этот алгоритм не сложно отметить те клетки, стартовав с которых, Робот остановится на клетке F6.

Ещё раз, Робот до упору будет двигаться вправо, потом до упору вниз, насколько это возможно. Вот алгоритм в двух словах.
Важно в этих задачах простыми словами сформулировать алгоритм, чтобы можно было проверять целые блоки лабиринта.
Количество клеток, удовлетворяющие условию будет 21.
12 Задание из ЕГЭ по информатике 2021 выглядит обычно объёмным, но на деле описываются обычные конструкции (Циклы и условия), которые есть в большинстве языках программирования.
Исполнитель Чертёжник перемещается на координатной плоскости, оставляя след в виде линии. Чертёжник может выполнить команду сместиться на(a, b), где a, b — целые числа. Эта команда перемещает Чертёжника из точки с координатами (x, y) в точку с координатами (x + a, y + b).
Например, если Чертёжник находится в точке с координатами (4, 2), то команда сместиться на(2, -3) переместит Чертёжника в точку (6, -1).
означает, что последовательность команд будет выполнена указанное число раз (число должно быть натуральным).
Чертёжнику был дан для исполнения следующий алгоритм (число повторений и величины смещения в первой из повторяемых команд неизвестны):
В результате выполнения этого алгоритма Чертёжник возвращается в исходную точку. Какое наибольшие число повторений могло быть указано в конструкции «ПОВТОРИ . РАЗ» ?
Эта задача похоже на задачу Кузнечик, которую рассматривали в 5 задании.
Напишем для переменной x уравнение.
8 + n * x + n * 4 — 35 = 0
Всё выражение приравниваем к нулю, т.к. Чертёжник возвращается в исходную точку, т.е. как ни ходил Чертёжник, он никуда в итоге не сдвинулся.
n — положительное целое число, количество повторений.
x — целое число, смещение по координате x.
n * x + n * 4 = 27
n * ( x + 4 ) = 27
Нужно подобрать x и n, чтобы равенство было верным.
Число n может быть 27, 9, 3, 1. Нам нужно выбрать число n, как можно больше.
Проверим число 27! Тогда выражение x + 4 = 1 => x = -3. Теперь нужно проверить это число для координаты y.
-60 + n * y — n * 6 — 3 = 0
27 * y — 27 * 6 = 63
27 * ( y — 6 ) = 63
Видим, что нельзя подобрать такое целое число для 27, чтобы при умножении получалось 63.
Проверим число 9! Тогда выражение x + 4 = 3 => x = -1. Теперь нужно проверить это число для координаты y.
-60 + n * y — n * 6 — 3 = 0
9 * y — 9 * 6 = 63
9 * ( y — 6 ) = 63
Видим, что можно подобрать такое целое число для 9, чтобы при умножении получалось 63. Это число 7. Значит, y — 6 = 7 => y = 13
ЕГЭ по информатике (задача 12, количество цифр 3, которое может получиться в строке из 17 цифр «3», 23 цифр «4» и 29 цифр «5»)
(№ 4127) (А. Богданов) Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки символов.
Первая команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Если цепочки v в строке нет, эта команда не изменяет строку. Вторая команда проверяет, встречается ли цепочка v в строке исполнителя Редактор.
Дана программа для исполнителя Редактор:
Определите максимально возможное количество цифр 3, которое может получиться в результате применения этой программы к строке, состоящей из 17 цифр «3», 23 цифр «4» и 29 цифр «5», идущих в произвольном порядке.
Решение:
Максимально возможное количество цифр 3 может получиться в результате применения программы к строке, состоящей из 17 цифр «3», 23 цифр «4» и 29 цифр «5», идущих в произвольном порядке, только в том случае, когда программа осуществит максимальное число замен :
- «43» на «33» и
- «53» на «433».
А это возможно только в том случае, когда все цифры будут расположены попарно определенным образом (учтите, что замена происходит только тогда, когда цифра «3» стоит после цифры «4» или после цифры «5»).
Рубрика «ЕГЭ Задание 12»
ЕГЭ информатика 12 задание разбор, теория, как решать.
Выполнение алгоритмов, (П) — 1 балл
Е12.40 при котором сумма числовых значений цифр строки
Дана программа для Редактора:
На вход приведённой выше программе поступает строка, начинающаяся с символа «>», а затем содержащая 39 цифр «0», n цифр «1» и 39 цифр «2», расположенных в произвольном порядке. Определите наименьшее значение n, при котором сумма числовых значений цифр строки, получившейся в результате выполнения программы, является простым числом. Ответ: …
Е12.39 приведённой ниже программы к строке, состоящей из 52 идущих подряд цифр 2
Какая строка получится в результате применения приведённой ниже программы к строке, состоящей из 52 идущих подряд цифр 2? В ответе запишите полученную строку. Ответ: Апробация ЕГЭ по информатике 19 февраля 2022 – задание №12 Тренировочный экзамен по информатике и ИКТ (КЕГЭ) в компьютерной форме
Е12.38 получилась строка, содержащая 70 единиц, 56 двоек и 23 тройки
Дана программа для редактора:
Известно, что исходная строка начиналась с нуля и заканчивалась нулём, а между ними содержала только единицы, двойки и тройки. После выполнения данной программы получилась строка, содержащая 70 единиц, 56 двоек и 23 тройки. Сколько цифр было в исходной строке? Ответ: СтатГрад Вариант ИН2110301 08.02.2022 – задание №12
Е12.37 Какую наибольшую сумму цифр может иметь строка
Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки символов. заменить (v, w) нашлось (v) Первая команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Если цепочки v в строке нет, эта команда не изменяет строку. Вторая команда …
Е12.36 Сколько различных строк может получиться в результате работы алгоритма
Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки символов. 1. заменить (v, w) 2. нашлось (v) Первая команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Если цепочки v в строке нет, эта команда не изменяет строку. …
Е12.35 строка начиналась с нуля, а далее содержала только единицы, двойки и тройки
Известно, что исходная строка начиналась с нуля, а далее содержала только единицы, двойки и тройки. После выполнения данной программы получилась строка, содержащая 50 единиц, 12 двоек и 7 троек. Сколько единиц было в исходной строке?
Задача №14. Выполнение алгоритма.
В этой задаче используется, в основном, описание алгоритмов на псевдокоде (условном алгоритмическом языке, включающем в себя и элементы языка программирования, и элементы обычного естественного языка).
Основные конструкции псевдокода описаны перед текстом задачи.
Исполнитель чертежник
Исполнитель Чертёжник перемещается на координатной плоскости, оставляя след в виде линии. Чертёжник может выполнять команду сместиться на (a, b), где a, b – целые числа. Эта команда перемещает Чертёжника из точки с координатами (x, y) в точку с координатами (x + a; y + b).
Например, если Чертёжник находится в точке с координатами (4, 2), то команда сместиться на (2, -3) переместит Чертёжника в точку (6, -1).
ПОВТОРИ число РАЗ
означает, что последовательность команд будет выполнена указанное число раз (число должно быть натуральным).
Чертёжнику был дан для исполнения следующий алгоритм (буквами n, a, b обозначены неизвестные числа, n>1):
сместиться на (60, 100)
сместиться на (a, b)
сместиться на (33, 44)
сместиться на (13, 200)
сместиться на (-1, 60)
Укажите наибольшее возможное значение числа n, для которого найдутся такие значения чисел a и b, что после выполнения программы Чертёжник возвратится в исходную точку.
В результате выполнения алгоритма Чертежник переместится
60 + n*a + n*33 + 13 – 1
100 + n*b + n*44 + 200 + 60
Известно, что в результате перемещения Чертежник вернулся в исходную точку, т.е. перемещение по оси х равно нулю, и перемещение по оси y равно нулю:
60 + n*a + n*33 + 13 – 1 = 0
100 + n*b + n*44 + 200 + 60 = 0
Наибольшее n – это наибольший общий делитель чисел -72 и -360. Это число 72.
Исполнитель робот
Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости:
При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответственно (по отношению к наблюдателю): вверх ↑, вниз ↓, влево ←, вправо →.
Четыре команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится РОБОТ (также по отношению к наблюдателю):
выполняется, пока условие истинно.
выполняется команда1 (если условие истинно) или команда2 (если условие ложно)
Если РОБОТ начнёт движение в сторону находящейся рядом с ним стены, то он разрушится и программа прервётся.
Сколько клеток лабиринта соответствуют требованию, что, начав движение в ней и выполнив предложенную программу, РОБОТ уцелеет и остановится в закрашенной клетке (клетка F6)?
ПОКА снизу свободно ИЛИ справа свободно ПОКА справа свободно
вправо
вниз

В данной программе РОБОТ сначала проверяет, свободна ли клетка справа или снизу от него. Если это так, то РОБОТ переходит к первому действию внутри цикла. В этом цикле пока у правой стороны клетки, в которой находится РОБОТ, нет стены, он продолжает двигаться вправо. Как только это условие перестанет выполняться, он переходит ко второму действию внутри цикла. Второе действие, заключается в следующем: РОБОТ передвигается на одну клетку вниз. После чего возвращается к началу внешнего цикла.
Проверив последовательно все клетки по правилу движения РОБОТА выясняем, что число клеток, удовлетворяющих условию задачи равно 15 (вся первая строчка, весь столбец F, клетки D2, E2, D4, D6, E4).
Правильный ответ указан под номером 3.
Исполнитель редактор
Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр.
А) заменить (v, w).
Эта команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Например, выполнение команды заменить (111, 27) преобразует строку 05111150 в строку 0527150. Если в строке нет вхождений цепочки v, то выполнение команды заменить (v, w) не меняет эту строку.
Б) нашлось (v).
Эта команда проверяет, встречается ли цепочка v в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Строка исполнителя при этом не изменяется.
выполняется, пока условие истинно.
выполняется команда1 (если условие истинно) или команда2 (если условие ложно).
Какая строка получится в результате применения приведённой ниже программы к строке, состоящей из 68 идущих подряд цифр 8? В ответе запишите полученную строку.
НАЧАЛО
ПОКА нашлось (222) ИЛИ нашлось (888)
ЕСЛИ нашлось (222)
ТО заменить (222, 8)
ИНАЧЕ заменить (888, 2)
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
КОНЕЦ
Обозначим строку из 68 восьмерок — 68«8»,
строку из двойки и 65 восьмерок – 1«2»65«8» и т.д.
Отработаем 4 первых цикла программы:
68«8» → 1«2»65«8» → 2«2»62«8» → 3«2»59«8» → 60«8»
В результате количество восьмерок уменьшилось на 8. Не сложно понять, что строка будет уменьшаться на 8 восьмерок каждые 4 итерации. В результате останется строка из 4 восьмерок. Доработаем программу:
Исполнитель черепашка
Исполнитель Черепашка перемещается на экране компьютера, оставляя след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существуют две команды:
Вперед n, где n – целое число, вызывающее передвижение черепашки на n шагов в направлении движения.
Направо m, где m – целое число, вызывающее изменение направления движения на m градусов по часовой стрелке.
Запись Повтори 5 [Команда1 Команда2] означает, что последовательность команд в скобках повторится 5 раз.
Черепашке был дан для исполнения следующий алгоритм:
Повтори 5 [Повтори 4 [Вперед 40 Направо 90] Направо 120]
Какая фигура появится на экране?

Последовательность действий Вперед 40 Направо 90 рисует отрезок длиной 40 шагов, а затем меняет направление на 90 градусов по часовой стрелке. Тогда последовательность Повтори 4 [Вперед 40 Направо 90] нарисует квадрат, а направление вернется в исходное.
Затем выполняется команда Направо 120, она изменит направление на 120 градусов от исходного.
Если повторить все рассмотренные действия 5 раз:
Повтори 5 [Повтори 4 [Вперед 40 Направо 90] Направо 120], то будет 5 раз нарисован квадрат. Причем каждый следующий повернут вокруг вершины относительно предыдущего на 120 градусов. Не сложно заметить, что 4-й квадрат будет нарисован поверх первого (120*3 = 360, сделан поворот на целый круг, возврат в исходное положение), а 5-й поверх второго.
Результат изображен под номером 3.
Ты нашел то, что искал? Поделись с друзьями!
Спасибо за то, что пользуйтесь нашими статьями. Информация на странице «Задача №14. Выполнение алгоритма.» подготовлена нашими редакторами специально, чтобы помочь вам в освоении предмета и подготовке к экзаменам. Чтобы успешно сдать необходимые и поступить в ВУЗ или колледж нужно использовать все инструменты: учеба, контрольные, олимпиады, онлайн-лекции, видеоуроки, сборники заданий. Также вы можете воспользоваться другими материалами из данного раздела.
