12

Работа редактора с цепочками

ЕГЭ · Информатика · Задание 12 · Алгоритмы и исполнители
ПовышеннаяФИПИ11AC48Короткий ответ≈ 4 минутыОтвет сверен с ключом

Исполнитель «Редактор» получает на вход строку цифр и преобразовывает её. Команда «заменить (v, w)» заменяет первое слева вхождение цепочки v на цепочку w, а команда «нашлось (v)» проверяет наличие цепочки v в строке, не изменяя её. Цикл выполняется, пока его условие истинно. Какая строка получится в результате применения программы к строке, состоящей из 81 идущей подряд цифры 1?

Программа: пока в строке встречается «1111» или «88888», если встречается «1111», заменить первое вхождение «1111» на «888», иначе заменить первое вхождение «88888» на «888».

Условие как в банке ФИПИ — открыть и сверить
Впишите правильный ответ.

Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды,
в обеих командах v и w обозначают цепочки цифр.

А) заменить (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)

КОНЕЦ ЕСЛИ

КОНЕЦ ПОКА

КОНЕЦ



Ваш ответ

Формат: число или слово без единиц измерения; дробную часть отделяйте запятой.

!
3 уровня: от лёгкого толчка до почти готового решения. Следующий открывается, когда прочитан предыдущий, — чтобы не перепрыгнуть сразу к ответу.
1Мягкая — с чего смотретьуровень 1 из 3

Сначала выполняется замена «1111» на «888», пока в строке остаётся такое вхождение.

2Наводящая — какие числа считатьуровень 2 из 3

Каждая замена «1111» на «888» уменьшает длину строки на один символ и разделяет оставшиеся цепочки единиц.

3Прямая — фактически решениеуровень 3 из 3

После исчерпания вхождений «1111» последовательно заменяйте первые вхождения «88888» на «888». Итоговая строка состоит из четырёх цифр 8 и одной цифры 1.

Всё равно не складывается?Полное решение с обоснованием каждого шага — на отдельной странице.
Открыть решение

Задание 12 ЕГЭ, информатика

Задача из темы «Алгоритмы и исполнители»: в ней 432 задачи с ответом и разбором по шагам. В 12-м номере бланка — 67 задач.

Ответ можно проверить здесь же, а если не выходит — открыть подсказку или разбор. Регистрация не нужна.