Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Сведения, необходимые для выполнения работы




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

Компоненты файла должны быть элементами одного типа и имеют общее имя. Определенная компонента становится доступной пользователю после того, как будут последовательно пройдены все предшествующие ей значения.

Количество элементов в файле может быть любым и заранее не фиксируется. После каждого элемента автоматически ставится признак конца элемента, а в конце - конца файла. С каждым файлом можно связать текущий указатель, неявно описанную переменную, указывающую на конкретный элемент. Действия с файлами производятся поэлементно - в них участвует элемент, на котором находится текущий указатель, перемещающийся в результате выполнения действий на следующий элемент. Положение первого элемента - 0.

Каждый внешний файл должен описываться как переменная в главной программе. Файлы, не используемые для ввода и вывода данных, являются внутренними, локальными переменными. Переменные файлового типа могут быть описаны в программе либо явно в разделе переменных:

VAR имя_файла: FILE OF базовый_тип_элементов;

Операции над файлами.

ASSIGN (имя_файл_переменной, ’имя_файла’) – присваивание имени файла, для установления связи между переменной и именем файла, присваиваемого ОС. Все операции с переменной будут выполняться с файлом на диске. Нельзя употреблять для используемого файла.

REWRITE (имя_файл_переменной) – открытие файла для записи. Запись в файл – это вывод результатов программы из оперативной памяти на диск. На внешнем устройстве создается новый файл с именем, присвоенным переменной, он подготавливается к обработке, указатель устанавливается на начало –. Файл сначала пустой. Существующий файл с таким же именем стирается.

RESET (имя_файл_переменной) – установка файла в исходное состояние, данные становятся доступными. Файл с именем, присвоенным переменной, подготавливается к обработке и указатель устанавливается на начало.

APPEND (имя_файл_переменной) – открытие внешнего файла. Файл, обозначенный переменной, открывается, и указатель перемещается на конец файла для добавления новых компонентов.

READ (имя_файл_переменной, элемент) – чтение из файла. Под чтением понимается ввод данных из внешнего файла в оперативную память.

WRITE (имя_файл_переменной, элемент) – запись в файл. Элемент должен быть типа элементов файла.

SEEK (имя_файл_переменной, N) – установка указателя на N-ый элемент, обозначенного переменной. N - целочисленное выражение.

SEEK (имя_файл_переменной, FILESIZE (имя_файл_ переменной)) – перемещает указатель в конец файла чтобы расширить файл. Содержит количество компонентов в файле.

FLUSH (имя_файл_переменной) – осуществляет очистку внутреннего буфера переменной, и гарантирует, что он будет записан на диск, если во время последнего обновления диска выполнялись какие-либо операции записи. Обеспечивает, что следующая операция чтения будет брать данные из дискового файла.

CLOSE (имя_файл_переменной) – закрытие дискового файла, обозначенного переменной. При этом справочник диска обновляется.

ERASE (имя_файл_переменной) – удаление файла на внешнем носителе. Если файл открыт и над ним производились действия командами RESET и REWRITE, перед стиранием файла его необходимо закрыть.

RENAME (имя_файл_переменной, ’новое_имя_файла’) – переименование внешнего файла. Справочник диска обновляется, в него заносится новое имя файла. Новое имя файла не должно совпадать с существующем.

Обработка файлов.

EOF (имя_файл_переменной) – определение конца файла. Число элементов файла не задается заранее, но вводится признак конца файла: логическая функция, результат которой TRUE (истина) или FALSE (ложь).

FILEPOS (имя_файл_переменной) – определение номера элемента, на который «смотрит» указатель. Целочисленная функция - номер компонента.

PUT (имя_файл_переменной) – добавляет новый компонент, осуществляет запись значения переменной в файл..

GET (имя_файл_переменной) – выбор следующего компонента файла, передвижения указателя на один компонент. переменная получает значение компонента, если файл не пуст.

3. Текстовые файлы содержат символы, разделенные на строки. В конце каждой строки стоит признак ее конца. Для описания используется слово TEXT:

VAR имя_файла: TEXT;

Текстовые файлы не являются типизированными. Их отличие от типизированных файлов заключается в следующем:

1. Элементами текстовых файлов являются символы со строковой структурой.

2. При чтении и записи числа преобразуются автоматически.

Операции над текстовыми файлами.

Для текстовых файлов применимы те же процедуры и функции, что и для обычных файлов: ASSIGN, RESET и REWRITE. Но SEEK, FLUSH, FILEPOS и FILESIZE к текстовым файлам применять нельзя.

APPEND (имя_файл_переменной) – открытие внешнего файла, с которым связана файловая переменная и помещение указателя в конец.

EOLN (имя_файл_переменной) – определение конца строки. Результат выполнения равен – TRUE (истина), если указатель стоит на символе конца.

SEEKEOLN (имя_файл_переменной) – определение конца строки. Указатель перескакивает пробелы и табуляцию, перед выполнением на конец строки.

SEEKEOF (имя_файл_переменной) – определение конца файла. Применительно к текстовому файлу результат операции равен – TRUE (истина), если указатель файла располагается на метке конца файла.

Специфика ввода и вывода текстового файла. Ввод и вывод текстовых файлов выполняется при помощи операций READ, READLN, WRITE и WRITELN, задающихся с параметрами. Если параметром процедуры ввода-вывода является идентификатор переменной текстового файла, то выполнение будет производиться с использованием файла, иначе - будут использоваться стандартные файлы INPUT и OUTPUT, их не нужно описывать.

READ (имя_файл_переменной, переменная1, …, переменнаяN) – ввод из текстового файла и подготавливается только для чтения. После выполнения команды READLN считывается информацию с начала следующей строки.

WRITE (имя_файл_переменной, переменная1,…, переменнаяN) – вывод из текстового файла который предварительно был назван файловой переменной. Аналогично выполняется команда WRITELN.

Задание: Выполняется на основе программы по заданию из лабораторной работы № 5. Предусмотреть сообщение результатов тестирования в виде оценки и выдачу рекомендаций пользователю или экстренный выход из программы.

Данные диалога, например, фамилия, имя, отчество и количество набранных баллов хранятся в специально создаваемом текстовом файле. При этом информация предварительно шифруется путем отображения символов в числовом эквиваленте при помощи оператора ORD, а расшифровывается в последствии оператором CHR.

Для работы нужно будет вспомнить особенности работы с символьными и строковыми типами данных и оператор LENGTH (СТРОКА) - длина строки (результат типа INTEGER).

Вопросы для самоконтроля:

1. Общий алгоритм создания и обработки файла для Turbo Pascal.

2. Привести примеры использования файлов последовательного доступа.

3. Как распознать конец файла данных средствами Turbo Pascal?

Литература: 1, 2, 3, 6, 7, 9, 14.

Лабораторная работа № 7.

Тема: Знакомство с объектно-ориентированной средой программирования.

Цель: Ознакомиться с объектами: форма, текстовое поле, рисунок, кнопка и их основными свойствами, а также другими элементами в среде программирования Borland Delphi.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...