P
pro·school.ru
Каталог школ

Вспомогательный алгоритм

💻 Информатика · 5 класс

Вспомогательный алгоритм

Когда задача большая и сложная, её удобно разбить на части поменьше. Вспомогательный алгоритм — это отдельный алгоритм, который решает одну небольшую задачу и которым пользуются внутри основного алгоритма. Его ещё называют подпрограммой или процедурой. Основной алгоритм при этом становится короче и понятнее, словно собран из готовых деталей.

Зачем нужны вспомогательные алгоритмы

Представь, что исполнителю нужно нарисовать три одинаковых квадрата. Можно каждый раз заново писать все команды для квадрата, но это долго и легко ошибиться. Лучше один раз составить вспомогательный алгоритм «нарисовать квадрат», дать ему имя, а потом просто вызывать его по имени столько раз, сколько нужно. Это похоже на то, как мастер один раз делает шаблон, а потом обводит его много раз.

Без вспомогательногоС вспомогательным
команды повторяются триждыкоманды записаны один раз
запись длиннаязапись короткая
легко ошибитьсяошибку исправляют в одном месте

Как это работает

Сначала составляют вспомогательный алгоритм и дают ему имя. В основном алгоритме его вызывают этим именем — как будто это новая команда исполнителя. Когда исполнитель доходит до вызова, он выполняет все команды вспомогательного алгоритма, а потом возвращается и продолжает основной.

Вспомогательный: квадрат = вперёд, поворот, вперёд, поворот, вперёд, поворот, вперёд Основной: квадрат → сдвиг → квадрат → сдвиг → квадрат

В основном алгоритме слово «квадрат» заменяет сразу все команды рисования квадрата. Получается коротко и наглядно.

Разбиение задачи на части

Большую задачу можно разбить на несколько вспомогательных алгоритмов. Например, чтобы нарисовать дом, делают вспомогательные алгоритмы «стена», «крыша» и «окно». Тогда основной алгоритм состоит всего из трёх понятных вызовов, и каждый из них легко проверить отдельно.

Правило: разбивай сложную задачу на простые части. Каждую часть оформляй вспомогательным алгоритмом и вызывай по имени. Так программа становится короче и понятнее.

Главное преимущество

Если в рисунке квадрата нужно что-то изменить, исправляют только вспомогательный алгоритм — и изменение сразу применится во всех местах, где он вызывается. Не нужно искать и править каждое повторение вручную.

Чем вызов отличается от повторения

Не нужно путать вспомогательный алгоритм с обычным повторением команд. Цикл повторяет одни и те же команды подряд несколько раз. А вспомогательный алгоритм — это отдельный набор команд под своим именем, который можно вызвать в любом месте основного алгоритма, причём вызывать его можно сколько угодно раз и в разных местах. Часто эти приёмы используют вместе: внутри вспомогательного алгоритма может быть цикл, а сам алгоритм вызывается несколько раз.

Кратко о главном

  • Вспомогательный алгоритм решает отдельную небольшую задачу.
  • Ему дают имя и вызывают из основного алгоритма как новую команду.
  • Он избавляет от повторения одинаковых команд и сокращает запись.
  • Исправление в одном месте применяется ко всем вызовам.