Редактор может выполнять две команды, в обеих командах v и w обозначают
Условие
Исполнитель Редактор получает на вход строку цифр и преобразует её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр.А) заменить (v, w).Эта команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Например, выполнение команды заменить (111, 27) преобразует строку 05111150 в строку 0527150.Если в строке нет вхождений цепочки v, то выполнение команды заменить (v, w) не меняет эту строку.Б) нашлось (v).Эта команда проверяет, встречается ли цепочка v в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Строка исполнителя при этом не изменяется. Цикл:ПОКА условие последовательность командКОНЕЦ ПОКАвыполняется, пока условие истинно.В конструкцииЕСЛИ условие ТО команда1 ИНАЧЕ команда2КОНЕЦ ЕСЛИвыполняется команда1 (если условие истинно) или команда2 (если условие ложно). Дана программа для Редактора:НАЧАЛОПОКА нашлось (72) ИЛИ нашлось (522) ИЛИ нашлось (2222) ЕСЛИ нашлось (72) ТО заменить (72,
-
КОНЕЦ ЕСЛИ ЕСЛИ нашлось (522) ТО заменить (522, 27)КОНЕЦ ЕСЛИЕСЛИ нашлось (2222) ТО заменить (2222,
-
КОНЕЦ ЕСЛИКОНЕЦ ПОКАКОНЕЦ На вход приведённой выше программе поступает строка, начинающаяся с цифры 5, а затем содержащая n цифр 2 (3 < n < 10 000).Определите наименьшее значение n, при котором сумма цифр в строке, получившейся в результате выполнения программы, равна 63.
Ответ
Ответ и полный разбор откроются после входа
Посмотреть ответРешение по шагам
Как рассуждать
Решение. Приведём решение на языке Python.for n in range(3,10000+1): s = '5' + '2' * n while ('72' in s) or ('522' in s) or ('2222' in s): s = s.replace('72', '2',
Осталось ещё 3 шага
s = s.replace('522', '27'…
s = s.replace('2222', '5'…
Шаг 4
Бесплатно · займёт минуту