Работа редактора с цепочками
Исполнитель «Редактор» получает на вход строку цифр и преобразовывает её. Команда «заменить (v, w)» заменяет первое слева вхождение цепочки v на цепочку w, а команда «нашлось (v)» проверяет наличие цепочки v в строке, не изменяя её. Цикл выполняется, пока его условие истинно. Какая строка получится в результате применения программы к строке, состоящей из 81 идущей подряд цифры 1?
Программа: пока в строке встречается «1111» или «88888», если встречается «1111», заменить первое вхождение «1111» на «888», иначе заменить первое вхождение «88888» на «888».
Условие как в банке ФИПИ — открыть и сверить
| Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, А) заменить (v, w). Эта команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Например, выполнение команды заменить (111, 27) преобразует строку 05111150 в строку 0527150. Если в строке нет вхождений цепочки v, то выполнение команды заменить (v, w) не меняет эту строку. Б) нашлось (v). Эта команда проверяет, встречается ли цепочка v в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Строка исполнителя при этом не изменяется.
Цикл ПОКА условие последовательность команд КОНЕЦ ПОКА выполняется, пока условие истинно. В конструкции ЕСЛИ условие ТО команда1 КОНЕЦ ЕСЛИ выполняется команда1 (если условие истинно). В конструкции ЕСЛИ условие ТО команда1 ИНАЧЕ команда2 КОНЕЦ ЕСЛИ выполняется команда1 (если условие истинно) или команда2 (если условие ложно).
Какая строка получится в результате применения приведённой ниже программы к строке, состоящей из 81 идущей подряд цифры 1? В ответе запишите полученную строку.
НАЧАЛО ПОКА нашлось (1111) ИЛИ нашлось (88888) ЕСЛИ нашлось (1111) ТО заменить (1111, 888) ИНАЧЕ заменить (88888, 888) КОНЕЦ ЕСЛИ КОНЕЦ ПОКА КОНЕЦ | |||
| |
Формат: число или слово без единиц измерения; дробную часть отделяйте запятой.
1Мягкая — с чего смотретьуровень 1 из 3
Сначала выполняется замена «1111» на «888», пока в строке остаётся такое вхождение.
2Наводящая — какие числа считатьуровень 2 из 3
Каждая замена «1111» на «888» уменьшает длину строки на один символ и разделяет оставшиеся цепочки единиц.
3Прямая — фактически решениеуровень 3 из 3
После исчерпания вхождений «1111» последовательно заменяйте первые вхождения «88888» на «888». Итоговая строка состоит из четырёх цифр 8 и одной цифры 1.