Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LabTp_11_fayl.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
87.55 Кб
Скачать

Л.В.Рибакова Модуль 4 Лабораторна робота 16

ЛАБОРАТОРНА РОБОТА №16

Тема: ФАЙЛИ.

МЕТА: Навчитись писати програмні модулі для створення файла з типом на магнітному диску та занесення даних до цього файла, а також складати програмні модулі для обробки даних, прочитаних з типізованого файлу за індивідуальними завданнями

ТЕОРЕТИЧНІ ВІДОМОСТІ.

Програма, написана на мові PASCAL, повинна якимось чином обмінюватися із зовнішніми пристроями (отримувати данні з магнітного диску, записувати отримані результати на диск, тощо) для роботи з зовнішніми пристроями використовуються файли.

Файл - це набір однотипових даних на магнітному диску, який має ім'я

.

ОБЯВА ФАЙЛУ З ТИПОМ

Опис файлового типу складається з ключового слова FILE, за яким іде ключове слово OF, а потім - опис типу елементів файлу.

Элементами файла можуть бути об’єкти будь-яких відомих типів, за винятком файла.

Наприклад:

Опис файлу, який складається з елементів записного типу:

1. Спочатку описуємо файловий тип:

<ім’я типу> = FILE OF RECORD

<поле>:<тип>;

...

<поле>:<тип>;

END;

2. Потім опишемо змінну для доступу до файлу:

<Імя1>: FILE OF <імя типу>;

3. І накінець опишемо змінну для доступу до запису:

<ім’я2>: <ім’я типу>;

Приклад опису файла

Для прикладу опишемо файл, який складається із відомих вам записів, які вміщують інформацію про студента:

  • Номер по списку,

  • Прізвище, ініціали,

  • місце проживання.

TYPE

INFORM = RECORD

Num: byte; {номер студента}

FIO: string [20]; {Прізвище та ініціали}

Adr: string[20]; {домашня адреса}

END;

VAR

FV: FILE OF INFORM; {змінна для доступу до файлу}

RV: INFORM; {змінна для доступу до запису}

З цього моменту, всі дії з файлом – створення, корегування, знищення - будуть виконуватись за допомогою змінної FV.

Дії з записом - читання запису з диску, зміна значень полів, записування запису на диск - призводяться за допомогою змінної RV.

Створення файла

Перед тим, як щось робити з даними файла, його треба створити. Алгоритм створення досить простий:

  • привласнити файлу ім'я;

  • відкрити файл як новий;

  • увести дані з клавіатури;

  • записати їх у файл;

  • закрити файл.

Для всіх цих операцій існують спеціальні процедури:

Assign(FV,'<ім'я>') - привласнити файлу, визначеному FV ім'я 'ім'я'.

Ця пpоцедуpа встановлює зв'язок між конкpетним фізичним файлом на диску і змінною файлового типу, яка буде пpедставником цього файла в пpогpамі. Ця пpоцедуpа має два паpаметpа:

FV - відома файлова змінна;

<ім'я> - повинно складатися не більш ніж з 8 символів+3 символ на розширення.

Наприклад: Assign(FV,'VOVA.DOC'); ASSIGN(FV,'d:/TP70/DAT/OCEN.DAT');

Rewrite(FV)- відчинити поки ще не існуючий (новий) файл.

Reset(FV) - відчинити вже існуючий на диску файл.

Write(FV,RV) - записати запис, визначений RV у файл FV.

Close(FV) - закрити файл.

Erase(FV) - знищити файл FV на диску.

От і всі стандартні процедури для створення файла, що вам треба знати.

Приклад створення файла

Створюємо файл даних про студентів гpупи на основі відомого запису типу INFORM. Умовимося, що у файлі не може бути більш 55 записів. Якщо введений номер студента = 55, то це буде служити ознакою закінчення введння даних у файл.

PROGRAM CREATION_INFO_SYSTEM; - заголовок

Uses CRT; - підключення CRT

TYPE INFORM = RECORD - опис типу

Num : byte; - номер

FIO : string[20]; - ім'я

Adr : string[20]; - адреса

END; - кінець запису

VAR - роздів описів

FV : FILE OF INFORM; - змінна для файла

RV : INFORM; - змінна для запису

BEGIN - розділ операторів

Assign(FV,'INFORM. DOC') - привласнимо файлу ім'я

Rewrite(FV); - відкриття як нового

WHILE True DO BEGIN - введення в циклі WHILE

Write('Номер:'); Readln(RV. Num); - запит-введення

IF RV. Number=55 THEN BEGIN Close(FV);Halt;END; - перевірка на вихід

Write('Ф. И.О.:');Readln(RV. FIO); - запит-запровадження

Write('Адреса:'); Readln(RV. Adr); - запит-введення

Write(FV,RV); - запис у файл

END; - кінець WHILE

END. - кінець програми

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]