
Правила розподілення програми на модулі
1. Рекомендується створювати окремий модуль, що містить всі глобальні визначення: константи, типи, змінні, оскільки для подключених модулів описування у головній програмі є недосяжними. (Модулям досяжні їх описування та описування модулів, що вони викликають, тому кожний із наступних модулів повинен викликати модуль з глобальними описуваннями.
2. Головним модулем як правило стає головна програма.
3. У наступні модулі виділяють підпрограми, об'єднані за логічною ознакою. Виділені у окремий модуль підпрограми не повинні залежати від програм у інших модулях, інакше зміни у одному із методів викликають зміни у інших, від нього залежних, і, як наслідок, їх повторну компіляцію.
Порядок компіляції
Як головна програма, так і модулі компілюються за допомогою меню
compile/compile
Після трансляції модулі .TPU розміщуються у каталозі, визначеному
options/directories/exe & TPU directory
При утворенні .EXE-файлу відповідні .TPU-файли розшукуються за описаним вище порядком в каталогах, визначених в
options/directories/unit directories
Коли у інтерфейсну частину модуля вносяться зміни, то всі модулі, які його використовують, треба перекомпілювати. Якщо зміни стосуються тільки секції реалізації, то перекомпілюється тільки змінений модуль. При створенні .EXE-файлу з підключенням зовнішніх модулів можна використовувати меню COMPILE:
compile/primary file
в тому разі, якщо головна програма не знаходиться у поточному вікні редагування. При цьому відчиняється вікно primary file Підвікно Primary program file - задає ім'я головного файлу, який потрібно відкомпілювати з включенням зовнішніх модулів.
Clear primary file- очищує це підвікно.
Додатково можна визначити режим компіляції модулів, що приєднюються:
compile/make
compile/build
Compile/make - створює файл "EXE", при цьому файли компілюються у відповідності з правилами:
1. Якщо compile/primary file містить ім'я головного файлу, він компілюється, інакше компілюється файл у поточному вікні редагування.
2. Перевіряються всі файли, вІд яких залежить головний, і, якщо вихідні .PAS файли мали зміни після створення відповідних файлів .TPU, вони перекомпілюються так само, як і залежні від зміненого модуля інші модулі.
Compile/build - перекомпіляція виконується для всіх модулів, що викликаються головним, незалежно від того, були чи ні вони змінені (компіляція не виконується, якщо не знайдено відповідного модуля з розширенням .PAS).
Варіанти завдань.
Розробити зовнішній модуль, що містить в інтерфейсній секціїї необхідні базові типи, константи або змінні, заголовки процедур або функцій. У головній програмі виконати приєднання розробленого модуля, організувати звернення до його процедур або функцій, використати базові типи, константи або змінні.
11.1
Утворити модуль обробки одновимірного масиву, який містить:
А) тип, що описує масив
Б) процедури:
введення масиву
виведення масиву
циклічного зсуву масиву на К позицій вліво
11.2
Утворити модуль обробки одновимірного масиву, який містить:
А) тип, що описує масив
Б) процедури:
введення масиву
виведення масиву
циклічного зсуву масиву на К позицій вправо
11.3
Утворити модуль обробки одновимірного масиву, який містить:
А) тип, що описує масив
Б) процедури:
введення масиву
виведення масиву
В) функції:
пошуку максимального(мінімального) елементу масиву
11.4
Утворити модуль обробки одновимірного масиву, який містить:
А) тип, що описує масив
Б) процедури:
введення масиву
виведення масиву
В) функції:
обчислення суми (добутку) елементів масиву
11.5
Утворити модуль обробки одновимірного масиву, який містить:
А) тип, що описує масив
Б) процедури:
введення масиву
виведення масиву
сортування масиву методом обміну
11.6
Утворити модуль обробки одновимірного масиву, який містить:
А) тип, що описує масив
Б) процедури:
введення масиву
виведення масиву
В) функції:
обчислення скалярного добутку двох векторів
11.7
Утворити модуль обробки одновимірного масиву, який містить:
А) тип, що описує масив
Б) процедури:
введення масиву
виведення масиву
обчислення суми двох векторів
11.8
Утворити модуль обробки двовимірного масиву (матриці) розміром m*n, який містить:
А) опис масиву
Б) процедури:
введення масиву
виведення масиву
обчислення суми двох матриць
11.9
Утворити модуль обробки двовимірного масиву (матриці) розміром m*n, який містить:
А) опис масиву
Б) процедури:
введення масиву
виведення масиву
обчислення добутку двох матриць
11.10
Утворити модуль обробки двовимірного масиву (матриці) розміром m*n, який містить:
А) опис масиву
Б) процедури:
введення масиву
виведення масиву
транспонування матриці
11.11
Утворити модуль обробки двовимірного масиву (матриці) розміром m*n, який містить:
А) опис масиву
Б) процедури:
введення масиву
виведення масиву
сортування рядків матриці по зростанню сум елементів.
11.12
Утворити модуль обробки двовимірного масиву (матриці) розміром m*n, який містить:
А) опис масиву
Б) процедури:
введення масиву
виведення масиву
сортування стовпчиків матриці по спадінню сум елементів.
11.13
Утворити модуль обробки двовимірного масиву (матриці) розміром m*n, який містить:
А) опис масиву
Б) процедури:
введення масиву
виведення масиву
В) функції:
пошуку мінімального елементу матриці
11.14
Утворити модуль обробки двовимірного масиву (матриці) розміром m*n, який містить:
А) опис масиву
Б) процедури:
введення масиву
виведення масиву
В) функції:
пошуку суми елементів матриці
11.15
Утворити модуль обробки двовимірного масиву (матриці) розміром m*n, який містить:
А) опис масиву
Б) процедури:
введення масиву
виведення масиву
В) функції:
пошуку мінімального за сумою елементів рядка матриці
11.16
Утворити модуль обробки двовимірного масиву (матриці) розміром m*n, який містить:
А) опис масиву
Б) процедури:
введення масиву
виведення масиву
В) функції:
пошуку максимального за сумою елементів стовпчика матриці
11.17
Утворити модуль обчислення кореня довільного рівняння вигляду f(x)=0
методом половинного ділення
11.18
Утворити модуль обчислення кореня довільного рівняння вигляду f(x)=0
методом ітерацій
11.20
Утворити модуль обчислення інтегралу довільної функції f(x) на інтервалі [a,b]
методом трапецій
11.21
Утворити модуль обчислення інтегралу довільної функції f(x) на інтервалі [a,b]
методом прямокутників
11.22
Утворити модуль утворення та обробки довільного вертикального меню з довільними координатами в текстовому режимі
11.23
Утворити модуль утворення та обробки довільного горизонтального меню з довільними координатами в текстовому режимі
11.24
Утворити модуль утворення та обробки довільного вертикального меню з довільними координатами в графічному режимі
11.25
Утворити модуль утворення та обробки довільного горизонтального меню з довільними координатами в графічному режимі
11.26
Утворити модуль що містить:
А) базові типи елементу однозв'язного списку та показівника на нього
Б) процедури
утворення черги
виведення черги
додавання елементу до черги
вилучення елементу з черги
11.27
Утворити модуль що містить:
А) базові типи елементу однозв'язного списку та показівника на нього
Б) процедури
утворення стеку
виведення стеку
додавання елементу до стеку
вилучення елементу з стеку
11.28
Утворити модуль виведення графіку довільної функції на наданому інтервалі, функція передається як параметр.
11.29
Утворити модуль що містить ініціалізацію миші та головні процедури та функції роботи з мишкою.
11.30
Утворити модуль руху за стрілками з визначеним кроком графічного зображення, доступ до якого виконується через показівник.