← Все вопросы

Задание 5 ЕГЭ (исполнители/алгоритмы) — как к нему подступиться?

Задан 1 месяц назад643 просмотров3 ответа
11

В задании 5 дан алгоритм-исполнитель: к числу что-то прибавляют, дописывают цифру, переводят в другую систему и т.п. Нужно найти наименьшее/наибольшее число с каким-то свойством. Руками перебирать долго. Как решать стабильно?

3 ответа

13
✓ Принятый ответ — помог автору

Не решай руками — напиши функцию-исполнитель и перебери диапазон. Берёшь правило из условия, оформляешь его как функцию f(n), прогоняешь все n в нужном диапазоне и фильтруешь по условию.

def f(n):
    # пример: пока число чётное — делим на 2, иначе прибавляем 3
    while n % 2 == 0:
        n //= 2
    return n

for n in range(1, 1000):
    if f(n) == 17:        # условие из задачи
        print(n)
        break             # наименьшее

Главное — аккуратно перенести правила исполнителя в код и не перепутать порядок команд. Дальше перебор делает всё за тебя.

Оксана Соколова вот это подход, а я реально руками мучился · 1 месяц назад
Карина Никитина автор: топ, спасибо · 1 месяц назад
6

Симулируй исполнитель функцией и перебирай диапазон циклом for. 90% таких заданий — это перебор.

2

Через перебор range().

Ваш ответ

Войдите, чтобы ответить на вопрос.
Поддержать проект