файлом зберігання записів} nd: file of zap ;.
1.4 Модуль введення інформації з текстового файлу в масив записів OPEN
Модуль OPEN створює набір даних в динамічної пам'яті комп'ютера. Містить єдину процедуру vvod, в якій відкривається файл NABOR.dat для читання. Далі всі дані містяться в цьому файлі зчитуються в масив записів. Після закінчення зчитуванню файл закривається. Результатом роботи даної процедури є nd - масив покажчиків на записи і n - кількість записів даних. При роботі програми всі зміни даних проводяться в динамічній пам'яті комп'ютера, тобто ті модулі, які коригують значення даних, виконують зміни не у файлі NABOR.dat в пам'яті комп'ютера.
open;
{Використовувані модулі} crt, types; nd: mas;, raz, nvs: integer;: zap;: file of zap; vvod (var nd: mas; var n: integer); vvod; i: integer; kl: char;
{Відкриваємо файл NABOR.dat для читання}
{Читаємо файл і завантажуємо знаходяться в ньому дані в динамічну пам'ять комп'ютера}
{Закриваємо файл}.
1.5 Модуль перегляд всіх елементів масиву SHOW
Включає в себе процедуру showw, формальними параметрами якої є масив покажчиків і лічильник кількості елементів масиву. Після виклику цієї процедури програмою на екрані виводиться таблиця з даними.
show;
{Використовувані модулі} crt, types; showw (nd: mas; raz: integer); showw; i: integer;:zap;
{Читаємо значення масиву з пам'яті і виводимо ці значення в таблиці}.
1.6 Модуль додавання нових елементів в кінець масиву ADD
Цей модуль призначений для додавання нових даних в кінець масиву. Під час виконання єдиної процедури цього модуля dob користувачеві пропонується ввести дані для нового запису. Після того як він коректно задав дані, у процедурі ці дані додаються до вже існуючого масиву даних. Процедура повертає оновлений масив даних і його розмір.
unit add;
{Використовувані модулі} crt, types, show; dob (var nd: mas; var raz: integer); dob (var nd: mas; var raz: integer); key: char;:zap;:integer;
{Отримуємо дані від користувача для нового запису}
{Створюємо новий запис і завантажуємо її в пам'ять} (nd [raz]);
{відображає зміну масив записів}
showw (nd, raz);.
1.7 Модуль виведення інформації з масиву в текстовий файл WRITING
Цей модуль призначений для запису зміненого масиву записів знаходиться в пам'яті комп'ютера в файл. Процедура цього модуля writingg отримує змінений масив записів і їх кількість, не яких даних головній програмі не повертає. У процедурі спочатку відкривається файл NABOR.dat для запису, записується весь масив записів у файл, потім файл закривається.
unit writing;
{Використовувані модулі} crt, types; put= NABOR.dat raquo ;; n: integer;: zap;: file of zap; writingg (nd: mas; raz: integer); writingg; i: integer;
{Відкриваємо файл для запису} (f, put); (f);
{Записуємо дані в файл}
{Закриваємо файл}.
1.8 Модуль коригування полів обраного елемента ELEMZAM
Модуль ELEMZAM призначений для зміни елементів однієї записи масиву. З головної програми MAINPRO при виклику процедури elem цього модуля передається трьох змінні. Перша змінна nom типу integer це індекс того запису, яку потрібно коригувати в масиві записів. Другий змінна nd це сам масив записів, який містить цей запис. Третя змінна raz це кількість записів в масиві, призначена для виклику додаткових функцій відображення і запису даних у файл.
На початку роботи процедури відображаємо дані того запису, яку будемо змінювати. Потім, для вибору користувача, який елемент цієї записи він хоче редагувати, створюємо меню. На підставі вибору користувача елемента для редагування в меню, пропонуємо ввести нове значення обраного елемента запису. Змінюємо значення вибраного елемента обраного запису. Результат роботи можна подивитися, вибравши пункт меню «Перегляд даних» цього меню, відповідно зберегти зміни у файлі можна пунктом меню «Зберегти зміни».
elemzam;
{Використовувані модулі} crt, mymenu, open, types, show, writing; elem (nom: integer; var nd: mas; var raz: integer); elem (nom: integer; var nd: mas; var raz: integer); a: masmenu;, x, y: byte;
nz: zap;, nm: integer;: char;
{Виводимо значенн...