Задание

12. Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах \(v\) и \(w \) обозначают цепочки цифр.

А) заменить(\(v\), \(w\)).

Эта команда заменяет в строке первое слева вхождение цепочки \(v\) на цепочку \(w\). Например, выполнение команды

заменить(111, 27)

преобразует строку 05111150 в строку 0527150.

Если в строке нет вхождений цепочки \(v\), то выполнение команды

заменить(\(v\), \(w \)) не меняет эту строку.

Б) нашлось (\(v\)).

Эта команда проверяет, встречается ли цепочка \(v\) в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Строка исполнителя при этом не изменяется.

Цикл

ПОКА условие

последовательность команд

КОНЕЦ ПОКА

выполняется, пока условие истинно.

В конструкции

ЕСЛИ условие

ТО команда1

ИНАЧЕ команда2

КОНЕЦ ЕСЛИ

выполняется команда1 (если условие истинно) или команда2 (если условие ложно).

Какая строка получится в результате применения приведённой ниже программы к строке, состоящей из 123 цифр, первая из которых — цифра 1, а остальные цифры — восьмёрки? В ответе запиши полученную строку.

НАЧАЛО

ПОКА нашлось(18) ИЛИ нашлось(288) ИЛИ нашлось(3888)

заменить(18, 2)

заменить(288, 3)

заменить(3888, 1)

КОНЕЦ ПОКА

КОНЕЦ