Блок подпрограммы
Блок подпрограммы используется в случаях, когда некоторый процесс в алгоритме слишком большой, чтобы изображать его на диаграмме, или когда какие-то блоки действий используются несколько раз в разных местах одной и той же диаграммы. Например, для задачи стрижки газона около дома диаграмма алгоритма ее решения может быть оформлена так:
Диаграмма, иллюстрирующая действия в подпрограмме, оформляется отдельно.
Подпрограмма “Очистить травосборник”
Перечисленные блоки могут произвольным образом вкладываться один в другой. Проиллюстрируем сказанное на примере задачи: “Найти наименьшее число в следующей последовательности чисел: 51 25 35 79 13 26 65”.
Рассматривая приведенную последовательность чисел, вы можете увидеть, что 13 — наименьшее число в ней, но как вы это определили? Можете ли вы вывести общее правило для определения наименьшего числа в любой последовательности чисел? Есть хорошее упражнение, которое вы можете выполнить с товарищем, чтобы разобраться с этой задачей.
Напишите каждое число на карточке или маленьком кусочке бумаги. Выкладывайте карточки на стол перед вашим товарищем по одной и не забывайте забирать карточку перед тем, как выложите перед ним следующую, т.е. всякий раз ваш товарищ видит только одну карточку.
В конце попросите вашего товарища назвать наименьшее число. Затем сделайте это с любой другой последовательностью чисел. Обсудите с вашим товарищем, что он думал о каждой выложенной карте.
Разработку алгоритма решения задачи и соответствующей диаграммы будем проводить методом, известным под названием “Проектирование сверху вниз”, или “Пошаговая детализация”. Идея метода очень проста — делим всю задачу на маленькие части и затем рассматриваем каждую часть и детализируем (уточняем) ее до отдельных элементарных действий, которые можно выполнить.
Так как вам придется делать много изменений в ходе работы, стоит вооружиться карандашом, линейкой и ластиком.