Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр.
А) заменить (v, w).
Эта команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Например, выполнение команды заменить (555, 63) преобразует строку 12555550 в строку 1263550. Если в строке нет вхождений цепочки v, то выполнение команды заменить (v, w) не меняет эту строку.
Б) нашлось (v).
Эта команда проверяет, встречается ли цепочка v в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Строка исполнителя при этом не изменяется.
Исполнителю задан следующий алгоритм:
НАЧАЛО
ПОКА нашлось (4444) ИЛИ нашлось (7777)
ЕСЛИ нашлось (4444)
ТО заменить (4444, 77)
ИНАЧЕ заменить (7777, 44)
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
КОНЕЦ
Какая строка получится в результате применения приведённой выше программы к строке, состоящей из 123 идущих подряд цифр 7? В ответе запишите полученную строку.
s = ’7’*123
while (’4444’ in s) or (’7777’ in s):
if ’4444’ in s:
s = s.replace(’4444’,’77’,1)
else:
s = s.replace(’7777’,’44’,1)
print(s)