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

Глава 10. Записи и файлы данных

10.1. Понятие записи

Данные типа запись, как и массивы, относятся к сложным структурам. Запись состоит из фиксированного числа элементов, называемых полями. Однако, в отличие от массива, поля могут быть различного типа. Например, записью можно считать строку экзаменационной ведомости:

Андреева С.В. 4 5 5

Данная запись состоит из четырех полей: одно поле – строкового типа (ФИО студента) и три числовых поля (оценки студента).

Описанию переменной типа запись предшествует определение типа с помощью раздела Type. Например, задание типа записи строки экзаменационной ведомости выглядит следующим образом:

Type

zap = record

fam: string;

m, inf, h: integer;

end;

Тогда в разделе описания переменных можно объявить:

Var

str: zap;

Здесь str – переменная типа запись; zap – тип записи; fam, m, inf, h – поля записи.

Служебные слова record…end играют роль операторных скобок, внутри которых записываются поля записи с указанием их типов.

Для обращения к отдельным полям переменной типа запись используется селектор записи.

Общий вид селектора записи

<имя переменной записи>.<имя поля>

Например, селекторы переменной str записываются следующим образом:

str.fam, str.m, str.inf, str.h.

10.2. Файлы данных

При большом объеме входных данных ввод с клавиатуры становится неэффективным, так как любые ошибки ввода приводят к повторному вводу всех данных. В таких случаях целесообразно создать отдельный файл входных данных и хранить его на диске. Кроме того, иногда возникает необходимость записывать результаты в файлы выходных данных и сохранять их на диске.

Для работы с файлами данных в программе с помощью специальных процедур организуется чтение входных данных из файла или, наоборот, запись выходных данных в файл. Имя файла задается по тем же правилам, которые определены в MS DOS. Обычно файлам данных принято давать стандартное расширение .dat.

Чтобы создать файл входных данных, можно воспользоваться любым текстовым редактором. Однако форматы данных в различных текстовых редакторах могут отличаться от редактора Edit среды Турбо Паскаль. Поэтому мы рекомендуем создавать файлы в редакторе Edit и хранить их в том же каталоге (папке), в котором записан исходный код программы.

Способы объявления файлов данных

В системе Турбо Паскаль файл данных представляет собой совокупность однотипных компонент. В программе файлу соответствует структурная переменная файлового типа. В зависимости от способа объявления файловой переменной можно выделить три вида файлов.

  • Типизированные файлы. Для таких файлов тип компонент указывается непосредственно в описании файловой переменной. Описание в этом случае имеет вид:

<файловая переменная>: file of <тип компонент файла>;

Например, если компоненты файла имеют тип записи (zap), то в разделе описания переменных можно объявить файловую переменную следующим образом:

Var

f: file of zap;

  • Нетипизированные файлы. Задаются стандартным типом file без указания типа компонент, например:

Var

f: file;

  • Текстовые файлы. Задаются стандартным типом text, например:

Var

f: text;

Компонентами текстового файла являются строки переменной длины. После ввода каждой строки нажимается клавиша [Enter]. При этом формируется специальный признак конца строки – маркер EOLN (End Of Line). Доступ к строкам осуществляется последовательно, начиная с первой. Число строк в текстовом файле может быть произвольным. В конце файла автоматически формируется признак конца файла – маркер EOF (End Of File).

Наиболее часто в программах используются текстовые файлы. Поэтому в дальнейшем ограничимся рассмотрением только текстовых файлов.