Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах и
обозначают цепочки цифр.
А) заменить
Эта команда заменяет в строке первое слева вхождение цепочки на цепочку
Например, выполнение команды
заменить (555, 63)
преобразует строку 12555550 в строку 1263550.
Если в строке нет вхождений цепочки то выполнение команды заменить
не меняет эту строку.
Б) нашлось
Эта команда проверяет, встречается ли цепочка v в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Строка исполнителя при этом не изменяется.
Цикл
ПОКА условие
последовательность команд
КОНЕЦ ПОКА
выполняется, пока условие истинно.
Какая строка получится в результате применения приведённой программы к строке, состоящей из идущих подряд цифр
. В ответе запишите полученную строку.
НАЧАЛО
ПОКА нашлось ИЛИ нашлось
ЕСЛИ нашлось
ТО заменить
КОНЕЦ ЕСЛИ
ЕСЛИ нашлось
ТО заменить
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
КОНЕЦ
Решение прогой
s = "9" * 78
while "33333" in s or "999" in s:
if "33333" in s:
s = s.replace("33333", "99", 1)
if "999" in s:
s = s.replace("999", "3", 1)
print(s)
Решение ручками
Каждые заменяются на
, тогда строка из
-ток заменится на
.
Каждые заменяются на
. Получается, что каждые
-ток меняются на
.
Больше мы ничего не можем заменить. Ответ: