Все разделы
Выбрать школу

Школа. Увлечения. Большое будущее.

PROSCHOOLS · ОБРАЗОВАНИЕ РЯДОМ

Ваш город

Выберите город, чтобы находить образование и возможности рядом.

Как учитываем городКаталог и кнопки «Выбрать школу» покажут школы выбранного города.Онлайн-курсы, учебник, ГДЗ и задания к экзаменам доступны по всей России.

Популярные города

Будет выбран: Вся Россия

Учебные материалы останутся прежними.

Поиск по сайту

По всему сайтуШколы выбранного города — выше в результатах

С чего начнём?

↑ ↓ — выбрать результат · Enter — открыть · Esc — закрыть

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

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

Что такое вспомогательный алгоритм и зачем сложную задачу разбивают на части.

Программный код на экране
Программный код на экранеMartin Vorel · Wikimedia Commons · CC BY-SA 4.0

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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