Гипермаркет знаний>>Информатика>>Информатика 9 класс>>Информатика: Вспомогательные алгоритмы и подпрограммы
ВСПОМОГАТЕЛЬНЫЕ АЛГОРИТМЫ И ПОДПРОГРАММЫ
§ 29. Вспомогательные алгоритмы и подпрограммы Основные темы параграфа: ♦ что такое вспомогательный алгоритм; Что такое вспомогательный алгоритм А сейчас решим следующую задачу. Задача 2. Пусть требуется составить программу, по которой ГРИС напишет на экране четырехзначное число 1919 (рис. 5.6). Конечно, можно поступить так, как в предыдущей задаче, написав одну длинную программу, по которой исполнитель шаг за шагом нарисует эти цифры. Но с очевидностью возникает другая идея: поскольку здесь дважды повторяются цифры 1 и 9, нельзя ли сократить работу, написав программу рисования той и другой цифры только один раз? Это действительно можно сделать. Алгоритм, по которому решается некоторая подзадача из основной задачи и который, как правило, выполняется многократно, называется вспомогательным алгоритмом. Вспомогательный алгоритм, записанный на языке программирования, называется подпрограммой или процедурой. Обращение к вспомогательному алгоритму (процедуре) В таком случае программа решения поставленной задачи разделяется на основную программу (основной алгоритм) и процедуры (вспомогательные алгоритмы). Каждая процедура должна иметь свое уникальное имя. Для рассматриваемой задачи имена процедур выберем следующими: ЕДИНИЦА и ДЕВЯТЬ. Тогда в основной программе команды обращения к этим процедурам будут такими: сделай ЕДИНИЦА По этим командам управление передается соответствующим процедурам, и после их выполнения управление вернется к следующей команде основной программы. Договоримся, что начальное и конечное состояния ГРИС при вычерчивании каждой цифры будут такими, как показано стрелками на рис. 5.6 (внизу, на восток). У единицы начальное и конечное состояния совпадают. Основная программа: программа Число 1919 Данный пример познакомил вас с новой командой из СКИ графического исполнителя — командой обращения к процедуре. Ее формат, т. е. общий вид, следующий: сделай <имя процедуры> Описание вспомогательного алгоритма (процедуры) Вот и все! Так просто! Но теперь надо «объяснить» исполнителю, что такое ЕДИНИЦА и что такое ДЕВЯТЬ. Это делается в описаниях процедур (здесь порядок выполнения — по столбцам): процедура ЕДИНИЦА процедура ДЕВЯТЬ нач нач поворот шаг поворот шаг поворот поворот шаг шаг поворот шаг шаг прыжок шаг шаг прыжок поворот шаг поворот поворот поворот кон прыжок шаг прыжок поворот прыжок шаг прыжок шаг поворот поворот кон шаг Определение процедуры в программе называется ее описанием. Формат описания процедуры: процедура <имя процедуры> Имя в описании и имя в обращении должны точно совпадать (никаких склонений по падежам!). Описание процедур располагается после основной программы. Добавив к программе описание процедуры, мы тем самым расширили систему команд исполнителя. В данной программе стало возможным использование команды обращения к этой процедуре. Метод последовательной детализации Использованный нами подход облегчает программирование сложных задач. Задача разбивается на более простые подзадачи. Решение каждой оформляется в виде вспомогательного алгоритма, а основной алгоритм организует связку между ними. Метод программирования, при котором сначала пишется основная программа, в ней записываются обращения к пока еще не составленным подпрограммам, а потом описываются эти подпрограммы, называется методом последовательной (пошаговой) детализации. Причем количество шагов детализации может быть гораздо большим, чем в нашем примере, поскольку сами подпрограммы могут содержать внутри себя обращения к другим подпрограммам. Сборочный метод Возможен и другой подход к построению сложных программ: первоначально составляется множество подпрограмм, которые могут понадобиться при решении задачи, а затем пишется основная программа, содержащая обращения к ним. Подпрограммы могут быть объединены в библиотеку подпрограмм и сохранены в долговременной памяти компьютера. Такую библиотеку можно постепенно пополнять новыми подпрограммами. Например, если для управления графическим исполнителем создать библиотеку процедур рисования всех букв и цифр, то программа получения любого текста будет состоять из команд обращения к библиотечным процедурам. Описанный метод называется сборочным программированием. Часто в литературе по программированию используется такая терминология: метод последовательной детализации называют программированием сверху вниз, а сборочный метод — программированием снизу вверх. Коротко о главном Для упрощения программирования сложных задач используются вспомогательные алгоритмы. Вспомогательный алгоритм — это алгоритм решения некоторой подзадачи из исходной (основной) задачи. Вспомогательный алгоритм, записанный на языке программирования, называется процедурой. Вспомогательный алгоритм должен быть описан. После этого в основном алгоритме можно использовать команду обращения к этому вспомогательному алгоритму. Метод программирования, при котором сначала записывается основной алгоритм, а затем описываются использованные в нем вспомогательные алгоритмы, называется методом последовательной детализации или программированием сверху вниз. Обратный порядок программирования называется программированием снизу вверх. Вопросы и задания 1. Что такое основной алгоритм; вспомогательный алгоритм?
Содержание урока
Если вы хотите увидеть другие корректировки и пожелания к урокам, смотрите здесь - Образовательный форум. |
Авторські права | Privacy Policy |FAQ | Партнери | Контакти | Кейс-уроки
© Автор системы образования 7W и Гипермаркета Знаний - Владимир Спиваковский
При использовании материалов ресурса
ссылка на edufuture.biz обязательна (для интернет ресурсов -
гиперссылка).
edufuture.biz 2008-© Все права защищены.
Сайт edufuture.biz является порталом, в котором не предусмотрены темы политики, наркомании, алкоголизма, курения и других "взрослых" тем.
Ждем Ваши замечания и предложения на email:
По вопросам рекламы и спонсорства пишите на email: