онстанти, типи даних, змінні, процедури і функції, які може використовувати головна програма, що викликає цей модуль. Якщо модуль використовує ще якісь модулі, то вони повинні бути вказані в інтерфейсній частини наступним чином: пишеться зарезервоване слово uses, потім перераховуються необхідні модулі (зауважимо, що так само позначаються і модулі в розділі опису основної програми). Ланцюжок використовуваних модулів може бути як завгодно довгою, проте вона не може містити цикли. Наприклад, припустима ланцюжок:
unit A;
uses B, C;
...
end.
unit B;
uses C, D;
...
end.
А ланцюжок
unit A;
uses B;
...
end.
unit B;
uses A;
...
end.
неприпустима, оскільки вона містить цикл A uses B uses A. p> Процедури і функції теж оголошуються в інтерфейсній частини модуля, але при цьому дозволено лише перераховувати їх заголовки, подібно попередньою оголошенню з директивою forward.
У виконавчої частини модуля міститися процедури і функції модуля. Тут можуть бути так само і локальні типи, константи, мітки або змінні. Виконавча частина починається з зарезервованого слова implementation, далі йде опису локальних констант, типів даних і змінних, а потім звичайний опис процедур і функцій, але з використанням скорочених заголовків, тобто без зазначення в них параметрів.
Іноді при виклику модуля слід провести деякі дії, наприклад ініціалізувати будь змінні, встановити будь-які зв'язки і т.д. Всі ці дії вказуються в секції ініціалізації , яка виглядає, як звичайне тіло програми: між словами begin і end з точкою знаходяться оператори. Якщо при виклику модуля ніяких подібних дій проводити не потрібно, то секція ініціалізації складається лише з слова end з крапкою.
Щоб використовувати процедури, функції та інші об'єкти модуля в основній програмі, необхідно написати зарезервоване слово uses, потім ім'я модуля. Після цього об'єкти модуля можна використовувати так, як якщо б вони були описані в основний програмі.
Розглянемо тепер модулі, які поставляються в стандартному комплексі Turbo Pascal, але функції і процедури яких не є стандартними.
1.3.2 Модуль CRT .
Модуль Crt містить процедури, функції і константи для роботи з екраном в текстовому режимі, роботи з клавіатурою і генерації звуку.
Підпрограми цього модуля дозволяють управляти текстовими режимами екрану, використанням кольорів і вікнами, яскравістю світіння символів, а також розширеними кодами клавіатури і звуком.
У текстовому режимі весь екран розбивається на рядки (їх, як правило, 25), а кожен рядок - на окремі позиції (їх зазвичай по 80 в кожній рядку) знаходиться в лівому верхньому кутку екрану.
В
1.3.2 Модуль DOS .
Тут зібрані процедури і функції (а також змінні і константи), що дозволяють з програм отримувати доступ до засобів MS DOS і управляти файлами. <В
1.3.3 Модуль GRAPH .
Містить безліч підпрограм, а також констант, типів і змінних, призначених для управління графічним режимом екрана. Ресурси модуля дозволяють звернеться до будь-якого пікселю екрану і управляти його світінням.
Запустити програму, яка використовує модуль GRAPH, без графічного драйвера (одного або кількох - це файл з розширенням. BGI) не вдасться. Зазначені драйвери не входять до складу модуля, але поставляються з Turbo Pascal (вони міститися в каталозі BGI). А якщо в програмі використовуються векторні шрифти, в додаток е драйверам потрібні також файли шрифтів (файли з розширенням. CHR). p align=center> 2. Рішення завдання.
2.1 Структурна схема програми.
Отже, уявімо схему програм.
Program xxx; {заголовок необов'язковий}
Const
розділ опису констант
Label
Розділ опису міток
Type
Розділ опису типів
Var
Розділ опису змінних
Описи підпрограм
Begin
Тіло програми
End.
У першому рядку схеми знаходиться заголовок програми. Тема починається зарезервованим словом PROGRAM, за яким слідує ім'я програми, яке їй було присвоєно при створенні. Завершується заголовок крапкою з комою. У Turbo Pascal заголовок не є обов'язковим елементом програми.
Після заголовка на схемі представлені розділи опису констант, типів, міток і змінних. Причому Turbo Pascal не пропонує порядок, в якому повинні слідувати ці розділи. p> Крім того, Turbo Pascal зовсім не наказує, що в програмі має бути не більше одного розділу опису типів, міток, констант або змінних і що в...