Исполнитель Редактор получает на вход строку цифр и преобразует её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр.
А) заменить (v, w).
Эта команда заменяет в строке первое слева вхождение
Если в строке нет вхождений
Б) нашлось (v).
Эта команда проверяет, встречается ли
Цикл
ПОКА условие
последовательность команд
КОНЕЦ ПОКА
выполняется, пока условие истинно.
В конструкции
ЕСЛИ условие
ТО команда1
ИНАЧЕ команда2
КОНЕЦ ЕСЛИ
выполняется команда1 (если условие истинно) или команда2 (если условие ложно).
Какая строка получится в результате применения приведённой ниже программы к строке, состоящей из
НАЧАЛО
ПОКА нашлось (11)
ЕСЛИ нашлось (222)
ТО заменить (222, 1)
ИНАЧЕ заменить (11, 2)
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
КОНЕЦ
Данный алгоритм сначала заменит
Снова заменятся
Примечание. В получившейся
Ответ: 2221.
Приведём другое решение на языке Python.
s = '1' * 77
while ('11' in s):
if '222' in s:
s = s.replace('222', '1', 1)
else:
s = s.replace('11', '2', 1)
print(s)

