OpenFIPI 2.0

53009A

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

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

Эта команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Например, выполнение команды

заменить (111, 27)

преобразует строку 05111150 в строку 0527150.

Если в строке нет вхождений цепочки v, то выполнение команды

заменить (v, w) не меняет эту строку.

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

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

 

Цикл

ПОКА  условие 

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

КОНЕЦ ПОКА

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

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

ЕСЛИ  условие

     ТО команда1

КОНЕЦ ЕСЛИ

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

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

ЕСЛИ  условие

     ТО команда1

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

КОНЕЦ ЕСЛИ

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

 

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

В ответе запишите только количество нулей в получившейся строке.

 

НАЧАЛО

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

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

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

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

         КОНЕЦ ЕСЛИ

КОНЕЦ ПОКА

КОНЕЦ

Ответы