Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
О.О.П / ооп / 4_кол / Лекції / 11. 9. Об'єктно-орієнтоване програмування, л.2.5.ppt
Скачиваний:
0
Добавлен:
30.05.2020
Размер:
953.34 Кб
Скачать

Приклад 4

Зіставимо програму на Паскале для обчислення найбільшого загального дільника для суми, різниці і твору двох чисел з аналогічною програмою на Сі++

Якщо основна частина програми є функцією, то хто (чи що) її викликає? Програму викликає операційна система при запуску програми на виконання; main -функція зовсім не обов'язково повинна мати тип void. Наприклад, вона може повертати операційній системі ціле значення 1 в якості ознаки благополучного завершення програми і 0 — в «аварійному» випадку. Обробка цих повідомлень здійснюватиметься системними засобами.

Використання бібліотечних функцій

Бібліотечними називаються допоміжні функції, що зберігаються в окремих файлах. Стандартні бібліотеки входять в стандартний комплект системи програмування на Сі/Сі++. Програміст може створювати власні бібліотеки функцій.

для використання стандартних функцій необхідно підключати до програми заголовні файли відповідних бібліотек. Робиться це за допомогою директиви претранслятора #include з вказівкою імені заголовного файлу.

Наприклад, #include <stdio.h>.

Усі заголовні файли мають розширення h (від англійського header). Ці файли містять прототипи функцій бібліотеки. На стадії передтрансляции відбувається підстановка прототипів перед основною функцією, після чого компілятор в змозі контролювати правильність звернення до функцій. Самі програми, що реалізовують функції, зберігаються у формі об'єктного коду і підключаються до основної програми на стадії редагування зв'язків (при роботі компонувальника).

Розглянемо програму рішення наступної задачі: знаючи декартові координати вершин опуклого чотирикутника, вичислити його площу

Математичне рішення цієї задачі наступне.

Позначимо координати вершин чотирикутника так:

(х1, у1) (х2, у2) (х3, у3) (х4, у4).

Площу чотирикутника можна вичислити як суму площин двох трикутників. У свою чергу, площа кожного трикутника обчислюється за формулою Герона. Для застосування формули Герона треба знайти довжини сторін. Довжина сторони між першою і другою вершинами обчислюється за формулою:

Аналогічно обчислюються довжини інших відрізків. Для вирішення основного завдання — обчислення площі чотирикутника — потрібно допоміжний алгоритм обчислення площі трикутника, для якого, у свою чергу, потрібний допоміжний алгоритм обчислення довжини відрізку по координатах кінців. Нижче приведена програма рішення поставленої задачі.

Приклад 5

У цій програмі використовуються функції з трьох стандартних бібліотек із заголовними файлами iostream.h, math.h і conio.h. Бібліотека (файл conio.h) містить функції, призначені для управління виводом на екран в символьному режимі.

У програмі з цієї бібліотеки використовується функція clrscr () — очищення екрану.

Ще одним новим елементом в приведеній програмі є рядок

typedef double D;

Службове слово typedef є специфікатором типу, що дозволяє визначати синоніми для позначення типів. В результаті в даній програмі замість довгого слова double для позначення того ж самого типу можна вживати одну букву D. Цей опис діє глобально і поширюється як на основну, так і на допоміжні функції.