Описание

Информатика

Выполнение алгоритмов для исполнителей (ФИПИ)

Средняя

12

м

мин

ФИПИ

Рисовать

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

А) заменить (v, w).

Эта команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Например, выполнение команды заменить (111, 27) преобразует строку 05111150 в строку 0527150.

Если в строке нет вхождений цепочки v, то выполнение команды заменить (v, w) не меняет эту строку.

Б) нашлось (v).

Эта команда проверяет, встречается ли цепочка v в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Строка исполнителя при этом не изменяется.

Цикл выглядит следующим образом:

ПОКА условие

последовательность команд

КОНЕЦ ПОКА

выполняется, пока условие истинно.

В конструкции:

ЕСЛИ условие

ТО команда1

ИНАЧЕ команда2

КОНЕЦ ЕСЛИ

выполняется команда1 (если условие истинно) или команда2 (если условие ложно).

Определите количество нулей в строке, получившейся в результате применения приведённой ниже программы к входной строке 10000090 \underbrace{1000\ldots00}_{90} , т.е. к строке, состоящей из единицы, за которой следуют 90 нулей подряд

НАЧАЛО

ПОКА нашлось (1)

ЕСЛИ нашлось (10)

ТО заменить (10, 0001)

ИНАЧЕ заменить (1, 000)

КОНЕЦ ЕСЛИ

КОНЕЦ ПОКА

КОНЕЦ