Жауабы: Подсчёт нулей после работы Редактора
Это официальный ключ тапсырмаға, источник — ФИПИ тапсырмаларының ашық банкі. Свой ответ можно сверить на странице тапсырма.
Бланкке: өлшем бірліктері жоқ сан немесе сөз; бөлшек бөлігін үтірмен бөліңіз.
Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Команда «заменить (v, w)» заменяет в строке первое слева вхождение цепочки v на цепочку w. Команда «нашлось (v)» проверяет, встречается ли цепочка v в строке, не изменяя её. Цикл выполняется, пока условие истинно.
Определите количество нулей в строке, получившейся в результате применения программы к входной строке $1\underbrace{00\ldots00}_{55}$, то есть к строке, состоящей из единицы, за которой следуют 55 нулей подряд.
Программа:
НАЧАЛО
ПОКА нашлось (1)
ЕСЛИ нашлось (10)
ТО заменить (10, 001)
ИНАЧЕ заменить (1, 00)
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
КОНЕЦ
Где здесь ошибаются
Считать, что команда заменить (10, 001) добавляет два нуля, хотя общее число нулей увеличивается только на один.
Забыть последнее выполнение команды заменить (1, 00).
Продолжить цикл после удаления единицы из строки.