
Помогите решить на python Исполнитель Редактор получает на вход строку цифр и преобразовывает её.
Ре-дактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр. заменить (v, w) нашлось (v) Дана программа для исполнителя Редактор: НАЧАЛО ПОКА нашлось (555) ИЛИ нашлось (888) ЕСЛИ нашлось (555) ТО заменить (555, 8) КОНЕЦ ЕСЛИ ПОКА нашлось (888) заменить (888, 5) КОНЕЦ ПОКА ЕСЛИ нашлось (555) ТО заменить (555, 8) КОНЕЦ ЕСЛИ КОНЕЦ ПОКА КОНЕЦ Дана строка, состоящая из 21 цифры, причем первые 18 цифр – восьмерки, а остальные – пятерки. Какая строка получится в результате применения программы к данной строке?

Ответы на вопрос

Python вовсе и не нужен. Нужен только черновик
Для себя я расставил табуляции:
НАЧАЛО
ПОКА нашлось (555) ИЛИ нашлось (888)
ЕСЛИ нашлось (555)
ТО заменить (555, 8)
КОНЕЦ ЕСЛИ
ПОКА нашлось (888)
заменить (888, 5)
КОНЕЦ ПОКА
ЕСЛИ нашлось (555)
ТО заменить (555, 8)
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
КОНЕЦ
Нам даётся число:
888888888888888888555
Нашлось 555, поэтому заменяем 555 на 8:
8888888888888888888
Все 888 заменяем на 5:
5555558
Заменяем 555 на 8:
85558
Начинаем общий цикл заново:
Нашлось 555, поэтому заменяем 555 на 8:
888
Все 888 меняем на 5:
5
Ответ: 5



Давайте разберем, как работает программа для исполнителя Редактор:
1. Исполнитель начинает с проверки условия: ПОКА нашлось (555) ИЛИ нашлось (888). 2. Если условие выполняется (в строке есть либо "555", либо "888"), то выполняется следующий блок команд:
- Если нашлось (555), то заменить (555, 8). - Если нашлось (888), то заменить (888, 5).
3. После этого исполнитель возвращается к шагу 1 и повторяет процесс до тех пор, пока не будет выполнено условие (555) или (888).
Теперь рассмотрим строку из 21 цифры, где первые 18 цифр - восьмерки, а оставшиеся три - пятерки. Программа будет выполнять следующие шаги:
- На первом шаге исполнитель найдет (555) и заменит его на (8), так как условие (555) выполнилось. - Получится строка из 20 цифр: 88888888888888888885. - На втором шаге исполнитель найдет (888) и заменит его на (5), так как условие (888) выполнилось. - Получится строка из 19 цифр: 555555555555555555.
Теперь программа вернется к началу и выполнит первый шаг:
- На третьем шаге исполнитель найдет (555) и заменит его на (8), так как условие (555) выполнилось. - Получится строка из 18 цифр: 888888888888888888.
Таким образом, после выполнения программы получится строка из 18 восьмерок:
888888888888888888.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili