русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Подпрограммы


Дата добавления: 2015-07-23; просмотров: 568; Нарушение авторских прав


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

На Рисунке 8 приведены два примера программ, содержащих оператор, являющийся, в свою очередь, программой. Пример в правой части Рисунка 8 показывает пример вложенных программ с большим числом уровней. Вообще говоря, предел для числа уровней вложенных друг в друга программ отсутствует. С практической точки зрения программы со слишком большим числом уровней вложенности могут оказаться слишком трудными для понимания.

Одним из путей, которым многие программисты избегают нагромождения сложных программных конструкций, является перенесение сложностей в “подпрограммы.” На Рисунке 9 показано, как это можно сделать в Mathcad. Определив intsimp где-нибудь в другом месте и использовав его внутри adapt, можно сделать программу, определяющую adapt, значительно проще. Определение adapt стало бы значительно более громоздким, если бы оба вхождения intsimp в него нужно было бы заменять длиннющим определением intsimp, приведенным в верхней части рисунка.

Функция adapt осуществляет адаптивную квадратуру или интегрирование, используя intsimp для аппроксимации площади на каждом подинтервале интегрирования. Из последней строки видно, что функция adapt вызывает сама себя, т.е. определена рекурсивно. Рекурсивные определения функций рассмотрены более подробно в следующем разделе.

Рисунок 8: Программы, операторы которых сами являются программами.

Рисунок 9: Использование подпрограммы для устранения громоздкости.



<== предыдущая лекция | следующая лекция ==>
E - функция | Рекурсия


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.169 сек.