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

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

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

Что такое вспомогательный алгоритм

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

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

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

  • Сложная задача становится понятнее, когда разбита на части.
  • Один и тот же вспомогательный алгоритм можно вызывать много раз.
  • Текст алгоритма становится короче и легче читается.
  • Ошибку проще найти в небольшом отдельном алгоритме.

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

АлгоритмРоль
Основной (главный)Управляет решением задачи в целом
ВспомогательныйРешает отдельную подзадачу по вызову

Разбор примера

Пусть нужно нарисовать дом. Разобьём задачу на части и опишем вспомогательные алгоритмы:

Основной алгоритм «Дом»:
вызвать «Стены»
вызвать «Крыша»
вызвать «Окно»
вызвать «Дверь»

Каждый вызов запускает свой вспомогательный алгоритм. Например, «Окно» можно вызвать дважды, если окон два, не переписывая команды заново.

Уточнение вспомогательного алгоритма

Каждый вспомогательный алгоритм, в свою очередь, тоже описывают шагами. Например, алгоритм «Окно» можно расписать так:

Вспомогательный алгоритм «Окно»:
нарисовать рамку
нарисовать вертикальную перекладину
нарисовать горизонтальную перекладину

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

Повторное использование

Особенно полезны вспомогательные алгоритмы, когда одно и то же действие нужно много раз. Представь, что надо нарисовать ряд из трёх одинаковых домов. Достаточно один раз описать алгоритм «Дом» и трижды его вызвать:

вызвать «Дом»
вызвать «Дом»
вызвать «Дом»

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

Правило: когда основной алгоритм встречает команду вызова, исполнитель выполняет весь вспомогательный алгоритм целиком, а затем возвращается к следующей команде основного алгоритма.

Частые ошибки

  • Пишут все команды в одном длинном алгоритме вместо разбиения на части.
  • Забывают, что после выполнения подпрограммы управление возвращается в основной алгоритм.
  • Дают вспомогательным алгоритмам непонятные названия.

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

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