Войти Создать аккаунт

Как в ЕГЭ · 21 из 42

№12. Редактор — ЕСЛИ подряд

По мотивам задания №12, второй вид программы. Редактор получает строку цифр и выполняет цикл «ПОКА нашлось(v₁) ИЛИ нашлось(v₂) ИЛИ …». Внутри цикла команды стоят подряд, без ИНАЧЕ: «ЕСЛИ нашлось(vᵢ) ТО заменить(vᵢ, wᵢ)». За один проход проверяются все правила по порядку, и каждое, чья строка нашлась, срабатывает один раз — уже на строке, изменённой предыдущими.

Что сделать

Выполните программу Редактора, где правила внутри цикла идут подряд через ЕСЛИ без ИНАЧЕ, и верните итоговую строку.

Что приходит

  • stroka — исходная строка

  • pravila — список пар (что найти, на что заменить) в порядке команд внутри цикла

Что вернуть

Строку, которая останется, когда ни одна строка из правил больше не находится.

Допишите функцию redaktor в редакторе справа. Результат верните через return — то, что напечатано, на проверку не влияет.

Пример

Строка из девяти единиц, правила 111 → 2, 222 → 3, 33 → 1. Первые два прохода дают 2111111 и 22111. На третьем 111 превращается в 2 — получилось 222, и тут же, в том же проходе, срабатывает второе правило: 3. Больше ничего не находится — ответ 3.

Тот же пример кодом
Вызов
redaktor("111111111", [("111", "2"), ("222", "3"), ("33", "1")])
Вернуть
'3'
Ctrl+Enter — проверить

Обсуждение

Вопросов пока нет.

Войдите, чтобы спросить.