Конструктор учебных заданий для электронного задачника Programming Taskbook - 22 стр.

UptoLike

Составители: 

22
Все данные из файла, как правило, нельзя одновременно отобразить в окне за-
дачника, поэтому для файловых элементов предусмотрена возможность прокрутки.
Для типизированных файлов прокрутка выполняется в горизонтальном направлении,
а для текстовых файловв вертикальном.
procedure DataFileN(FileName: string; Y, W: integer);
procedure DataFileR(FileName: string; Y, W: integer);
procedure DataFileC(FileName: string; Y, W: integer);
procedure DataFileS(FileName: string; Y, W: integer);
procedure DataFileT(FileName: string; Y1, Y2: integer);
Процедуры группы DataFile с именами, завершающимися символами N, R, C, S,
T, позволяют включить в задание в качестве исходного файла один файл типа file of
integer, file of real, file of char, file of ShortString, text соответственно. К моменту вызо-
ва процедуры файл, включаемый в задание, должен быть создан, заполнен исходными
данными и закрыт. Имя этого файла передается параметром FileName.
Два последних параметра имеют разный смысл для процедур, обрабатывающих
типизированные файлы, и для процедуры DataFileT, обрабатывающей текстовые фай-
лы. Для процедур, связанных с типизированными файлами, параметр Y указывает
номер экранной строки в области исходных данных, в которой будут отображаться
элементы данного файла, а параметр W указывает количество позиций, отводимых
под отображение одного элемента файла. Если фактическая длина элемента файла
оказывается меньше параметра W, то изображение элемента дополняется пробелами
(пробелы добавляются слева для числовых данных и справа для символьных); если
длина элемента файла окажется больше значения W, то в конце поля, выделенного
для его вывода, будет указан символ «*» (звездочка) красного цвета. При определе-
нии параметра W необходимо предусматривать дополнительные позиции для пробе-
лов, служащих разделителями элементов, а в случае строковых и символьных файлов
для апострофов, автоматически добавляемых к каждому элементу при его отобра-
жении на экране. Способ отображения вещественных чисел устанавливается, как и
для обычных исходных данных, процедурой SetPrecision (см. п. 2.2); по умолчанию
вещественные числа отображаются в формате с фиксированной точкой и двумя зна-
ками в дробной части. Количество элементов, отображаемых на экране, определяется
автоматически так, чтобы заполнить по возможности всю экранную строку. Никакие
другие исходные данные на этой строке размещать нельзя.
Для процедуры DataFileT параметры Y1 и Y2 определяют соответственно номер
первой и последней экранной строки той части области исходных данных, которая
отводится под отображение текстового файла. На каждой экранной строке размеща-
ется одна строка из текстового файла.
Параметры Y, Y1, Y2 должны принимать значения от 1 до 5 (Y и Y1 могут также
принимать значение 0; этот случай описан в конце данного раздела); значение Y1 не
должно превышать значение Y2. Параметр W должен лежать в диапазоне 1–72.
При наличии нескольких исходных файлов вызов соответствующих процедур
группы DataFile может проводиться в любом порядке, независимо от порядка распо-
ложения этих файлов на экране. При попытке размещения двух файлов на одной эк-
ранной строке выводится сообщение об ошибке. Вызовы процедур группы DataFile
могут проводиться как до, так и после вызовов процедур группы Data, определяющих
«обычные», не файловые исходные данные (см. п. 2.2).