Ноу Інти, лекція, модульне програмування

Щоб використовувати в програмі величини, описані в інтерфейсній частині модуля, ім'я модуля слід вказати в розділі uses. Можна записати кілька імен модулів через кому, наприклад:

Після цього всі описи, розташовані в інтерфейсних секціях модулів, стають відомими в програмі, і ними можна користуватися точно так же, як і величинами, визначеними в ній безпосередньо. Пошук модулів виконується спочатку в бібліотеці виконуючою системи, потім в поточному каталозі, а після цього - в каталогах, заданих у діалоговому вікні Options (Directories.

Якщо в програмі описана величина з тим же ім'ям, що і в модулі, для звернення до величини з модуля потрібно перед її ім'ям вказати через точку ім'я модуля.

ПРИМІТКА До будь-якій програмі автоматично підключається стандартний модуль System. який містить бібліотеку виконуючої системи Паскаля.

Приклад використання модуля з приклад 4.6 наведено в приклад 4.7. Програма знаходить різницю середніх арифметичних значень двох речових масивів.

Лістинг 4.7. Різниця середніх арифметичних значень масивів (модуль)

Стандартні модулі Паскаля

У Паскалі є ряд стандартних модулів, в яких описано велику кількість вбудованих констант, типів, змінних і підпрограм. Кожен модуль містить пов'язані між собою ресурси. Нижче наводиться коротка характеристика модулів Паскаля.

модуль System

Модуль System містить базові засоби мови, які підтримують введення-виведення, роботу з рядками, операції з плаваючою точкою і динамічний розподіл пам'яті. Цей модуль автоматично використовується в усіх програмах, його не потрібно вказувати в операторі uses. Він містить всі стандартні і вбудовані процедури, функції, константи і змінні Паскаля.

модуль Crt

Модуль Crt дозволяє:

  • виконувати висновок в заданий місце екрана заданим кольором символу і фону;
  • відкривати на екрані вікна прямокутної форми і виконувати висновок в межах цих вікон;
  • очищати екран, вікно, рядок і її частина;
  • обробляти введення з клавіатури;
  • управляти вбудованим динаміком.

Лістинг 4.8. Приклад використання модуля Crt

Генератор випадкових чисел формує число, що знаходиться в діапазоні від нуля до max - 1. Користувач вводить числа в одну і ту ж позицію на екрані до тих пір, поки не вгадає це число. При вгадуванні з першого разу коефіцієнт невдачливості дорівнює нулю.

Модулі Dos і WinDos

Модулі Dos і WinDos містять підпрограми, що реалізують можливості операційної системи MS-DOS, такі як перейменування, пошук і видалення файлів, отримання та встановлення системного часу, виконання програмних переривань і т. Д. Ці підпрограми в стандартному Паскалі не визначені. Для підтримки підпрограм в модулях визначені константи і типи даних.

Модуль Dos використовує рядка Паскаля, а WinDos - рядки з завершальним нулем.

модуль Graph

Модуль забезпечує роботу з екраном в графічному режимі.

Екран в графічному режимі представляється у вигляді сукупності точок - пікселів (pixel, скорочення від picture element). Колір кожного пікселя можна задавати окремо. Початок координат знаходиться в лівому верхньому кутку екрану і має координати (0, 0). Кількість точок по горизонталі і вертикалі (роздільна здатність екрану) і кількість доступних кольорів залежать від графічного режиму. Графічний режим встановлюється за допомогою службової програми - графічного драйвера.

До складу оболонки входять кілька драйверів, кожен з яких може працювати в декількох режимах. Режим встановлюється при ініціалізації графіки або автоматично, або програмістом. Самий "потужний" режим, підтримуваний модулем Graph. - 640 480 крапок, 16 кольорів. Модуль Graph забезпечує:

  • висновок ліній і геометричних фігур заданим кольором і стилем;
  • зафарбовування областей заданим кольором і шаблоном;
  • висновок тексту різним шрифтом, заданого розміру і напрямки;
  • визначення вікон і відсікання по їх кордоні;
  • використання графічних спрайтів і роботу з графічними сторінками.

модуль Strings

Модуль Strings призначений для роботи з рядками, що закінчуються нуль-символом, тобто символом з кодом 0 (їх часто називають ASCIIZ-рядки). Цей вид рядків введений в Паскаль спеціально для роботи з довгими рядками і програмування під Windows. Модуль Strings містить функції копіювання, порівняння, злиття рядків, перетворення їх в рядки типу string. пошуку подстрок і символів.

Схожі статті