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