Решение: Работа редактора со строкой цифр
Исполнитель Редактор получает на вход строку цифр. Команда «заменить (v, w)» заменяет первое слева вхождение цепочки $v$ на цепочку $w$, а команда «нашлось (v)» проверяет наличие цепочки $v$ в текущей строке. Какую строку получим после применения программы к строке, состоящей из 96 идущих подряд цифр 9?
Решение по шагам
4 шагаВ начале строка состоит из 96 цифр 9. Пока в ней нет цепочки 22222, программа заменяет первые найденные четыре цифры 9 на одну цифру 2.
После появления цепочек из пяти цифр 2 срабатывает первая ветвь ЕСЛИ: первая найденная цепочка 22222 заменяется на 99.
Далее программа попеременно обрабатывает образовавшиеся цепочки цифр 9 и 2. После выполнения всех возможных замен ни одна из цепочек 22222 и 9999 в строке не остаётся.
Пошаговое отслеживание первой слева подходящей цепочки приводит к итоговой строке 299.
Где здесь ошибаются
Одновременная замена всех найденных цепочек вместо замены только первого слева вхождения.
Проверка второй ветви ЕСЛИ при наличии цепочки 22222.
Неправильный порядок выполнения команд внутри цикла.