Исполнитель Редактор получает на вход строку цифр и преобразовывает её.
Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр.
А)
заменить (v, w).
Эта команда заменяет в строке первое слева вхождение цепочки v на цепочку w.
Например, выполнение команды
заменить (111, 27)
преобразует строку 05111150 в строку 0527150.
Если в строке нет вхождений цепочки v, то выполнение команды заменить (v, w) не меняет эту строку.
Б)
нашлось (v).
Эта команда проверяет, встречается ли цепочка v в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение
«истина», в противном случае возвращает значение «ложь». Строка исполнителя при этом не изменяется.
Цикл
ПОКА условие
последовательность команд
КОНЕЦ ПОКА
выполняется, пока условие истинно.
В конструкции
ЕСЛИ условие
ТО команда1
ИНАЧЕ команда2
КОНЕЦ ЕСЛИ
выполняется команда1 (если условие истинно) или команда2 (если условие ложно).
Какое количество цифр 2 получится в строке, полученной в результате применения алгоритма к строке, в которой в начале стоит 50 цифр '3', 100 цифр '2' и 50 цифр '1', а заканчивается строка символом '<'?
НАЧАЛО
ПОКА нашлось (21) ИЛИ нашлось (31)
ПОКА нашлось (1<)
заменить (1<, <2)
КОНЕЦ ПОКА
ПОКА нашлось (2<)
заменить (2<, <3)
КОНЕЦ ПОКА
ПОКА нашлось (3<)
заменить (3<, <3)
КОНЕЦ ПОКА
заменить (21, 3)
заменить (31, 2)
КОНЕЦ ПОКА
КОНЕЦ