Процедуры и рекурсии
Процедура — это вспомогательный алгоритм для решения подзадач.
Правила использования процедур
- С помощью процедур выделяют подзадачи, которые встречаются в программе несколько раз.
- Каждая процедура имеет своё имя, и переменные, входящие в неё, должны быть описаны.
- Процедуры записываются одна за другой после основной программы.
- Процедура вызывается только там, где её имя встречается в основной программе.
Рекурсия — это определение объектов через самих себя, вызов функции (процедуры) из неё же самой или через другие рекурсии.
Рекурсивно могут быть определены как алгоритмы, так и типы данных.
Рекурсия обычно используется тогда, когда в результате исходная задача сводится к более простой.
Алгоритм «Ханойской башни» фактически предлагает решить задачу для п колец через задачи для меньшего числа колец (п — 1).
Алгоритм «Ханойской башни» словесно можно представить так:
Шаг 1. Определяем число дисков и находим, как будет перемещаться наименьший диск (данный шаг выполняется один раз, в самом начале).
Шаг 2. Смотрим номер хода: если нечётный — переносим наименьший диск в направлении, определённом в шаге 1, если чётный — то возможен единственный ход, а значит, берём наименьший из двух верхних дисков и переносим его.
Учебные исполнители — устройства, способные выполнять определённый набор команд, для управления которыми составляются программы.
Учебный исполнитель «Робот» предназначен для выполнения рисунков с помощью закрашивания или незакрашивания клеток.
Учебный исполнитель «Чертёжник» предназначен для построения рисунков на поле, «размер» которого можно задавать с помощью инструмента «перо» — чертежей, графиков, рисунков, состоящих из прямолинейных отрезков. Его «среда» — система координат.
Учебный исполнитель «Черепашка» предназначен для рисования графических объектов на рабочем поле, отображающихся в виде следа-линии, который оставляет за собой «Черепашка».
Список (система) команд исполнителя (СКИ) — это набор команд, которые может выполнять исполнитель.