Скачать 1.94 Mb.
|
8.3 Расширенная таблица символов ASCII для кодовой страницы DOS-866
30 ЛЕКЦИЯ 3. Функции и процедурная абстракция 1. Назначение подпрограмм Естественный и интуитивно понятный подход к решению больших сложных задач состоит в том, чтобы разбить большую задачу на набор меньших, которые можно решить более или менее независимо и затем скомбинировать полученные решения для получения полного решения. На таком подходе основана методология структурного программирования, которое господствовало в разработке программного обеспечения до появления объектно-ориентированного подхода. При структурном программировании большая программа разделяется на набор более или менее независимых подпрограмм. В Си++ подпрограммы называются функциями (в Паскале и некоторых других языках программирования есть два типа подпрограмм - "процедуры" и "функции"). Подпрограммы уже неоднократно встречались в предыдущих лекциях. Например, в программе 2.3.2 для построения таблицы квадратных корней был применен следующий цикл for: #include for ( number=1 ; number<=10 ; number=number+1 ) { cout.width(2 0); cout « number « sqrt(number) « "\n"; Функция "sqrt (...)" — это подпрограмма, описание которой хранится в заголовочном файле "math.h", а реализация - в библиотечном файле "math.lib". При вызове функции "sqrt (...)" ей передается числовой параметр "number", функция применяет алгоритм вычисления квадратного корня из этого числа, и затем возвращает вычисленное значение обратно в место вызова. Для применения этой функции программисту совсем необязательно знать, какой именно алгоритм реализован внутри нее. Главное, чтобы функция гарантированно возвращала верный результат. Было бы довольно нелепо включать в явном виде алгоритм извлечения квадратного корня (и, возможно, делать это неоднократно) в главную функцию программы "main". В данной лекции описывается, как программист может определять свои собственные функции. Сначала предполагается, что эти функции размещаются в одном файле с функцией "main". В конце лекции показывается, как распределять функции программы по нескольким файлам. 2. Определение новых функций Простым примером определения и использования новой функции является программа 2.1 (в ней пользовательская функция называется "area (...)"). Эта программа вычисляет площадь прямоугольника заданной длины и ширины. #include int area(int length, int width); /* Описание функции */ 31 // ГЛАВНАЯ ФУНКЦИЯ: int main () { int this_length, this_width; cout « "Введите длину: "; /* < строка 10 */ cin » this_length; cout << "Введите ширину: "; cin » this width; cout « "\n"; /* < строка 14 */ cout « "Площадь прямоугольника с размерами "; cout « this_length « "x" « this_width; cout « " равна " « area(this_length, this_width) « "\n"; return 0; } // КОНЕЦ ГЛАВНОЙ ФУНКЦИИ // ФУНКЦИЯ ВЫЧИСЛЕНИЯ ПЛОЩАДИ: int area (int length, int width) /* Начало определения функции */ { int number; number = length * width; return number; } /* Конец определения функции */ // КОНЕЦ ФУНКЦИИ |
Лекция основы Си++ 9 Б73 Основы программирования на языке Си++: Для студентов физико-математических факультетов педагогических институтов. – Коломна:... |
Лекция I и проблема языка и сознания лекция II 31 слово и его семантическое... Монография представляет собой изложение курса лекций, про* читанных автором на факультете психологии Московского государственного... |
||
Лекция психосексуальное развитие. Возрастная динамика взаимоотношения полов 15 Основы семейной психопедагогики (курс лекций) / В. И. Короткий. — Архангельск: М'арт, 2003. — 178 с |
Лекция Архитектура 32-разрядных ос windows 7 Б73 Основы программирования на языке Си++: Для студентов физико-математических факультетов педагогических институтов. – Коломна:... |
||
Лекция Основные понятия ооп 7 Б73 Основы программирования на языке Си++: Для студентов физико-математических факультетов педагогических институтов. – Коломна:... |
Лекция №1. Введение. Элементы дифференциальной геометрии. 2 Лекция №5. Множества Жюлиа, множество Мандельброта и их компьютерное представление. 18 |
||
Лекция на тему: «Современные подходы к содержанию дополнительного образования детей» ... |
Лекция в Дорнахе 22 мая 1920 года Канта и протестантизма. Эта лекция вызвала негодование среди членов Лиги, культивировавших и признававших под названием монизма вообще... |
||
Курс лекций Лекция Введение в философскую суицидологию. Лекция Общая... Открыть, в чём состоит суть суицида, наука не в состоянии (по собственной ограниченной природе) и потому должна обращаться за объяснениями... |
Лекция для слушателей курса «Основы религий» Я не могу всего этого понять, потому что некоторые пытливые учителя, помню, меня просто одолевали вопросами, где найти, например,... |
Поиск на сайте Главная страница Литература Доклады Рефераты Курсовая работа Лекции |