Практикум по решению задач на ЭВМ. Тарова И.Н - 10 стр.

UptoLike

Тарова И.Н., Терехов Ю.П., Масина О.Н., Скоков А.В.
описаний. Например: Var f: intfile; или var f: file of integer.
Файловая переменная является буфером между Паскаль-программой и
внешним устройством и должна быть логически с ним связана. Связь осуще-
ствляется оператором языка Паскаль:
assign (<имя файловой переменной>,'<имя устройства>')
Как правило, файлы для хранения данных связаны с устройством внешней
памяти на магнитных носителях (дисковод) и носят название внешние фай-
лы. Если, например, файл с именем primer.dat логически связан с дисково-
дом А:, то все данные, помещаемые в файл, будут храниться на этом дис-
ковом накопителе, а установка «окна» между программой и файлом будет
определяться через файловую переменную f оператором assign (f, 'primer.dat')
Если внешним устройством является принтер, то связь осуществляется
оператором assign(f, '1st:'). Здесь 1st - логическое имя печатающего устрой-
ства. Ниже приветны логические имена внешних устройств ввода-вывода:
con - консоль; trm - терминал; kbd - клавиатура; 1st - принтер; aux - бу-
фер сети; usr - драйвер пользователя.
После осуществления связи файловая переменная f отождествляется с
соответствующим файлом. Для работы с файлом его необходимо открыть,
а по окончании работы - закрыть. Файл открывается для чтения операто-
ром reset(f), для записи - оператором rewrite(f).
Чтение и запись данных осуществляется известными командами
read/write, только в начале списка помещается имя файловой переменной:
read (f, <список ввода>);
readln (f, <список ввода>);
write(f, <список вывода>);
writeln(f, <список вывода>).
Закрытие файла осуществляется командой close(f).
Условно файл можно представить в виде ленты, у которой есть начало,
а конец нe фиксируется. Компоненты файла записываются на эту ленту
последовательно, дpyr за другом:
F
0
F
1
F
2
F
3
M.
K.
^T.M.
Здесь т.м. - текущий маркер, указывающий на рабочую позицию (окно)
файла; м.к. (маркер конца файла) - специальный код, автоматически фор-
мируемый вслед за последним элементом файла.
Такого рода файлы называются файлами последовательного доступа. В
исходной версии Паскаля файлов прямого доступа, для которых можно
непосредственно «достать» любую компоненту, не предусмотрено; однако,
в Турбо-Паскале элементы прямого доступа есть (например, через функ-
цию seek).
Команда rewrite(f) - открыть файл для записи - устанавливает файл в
начальное состояние режима записи; текущий маркер устанавливается на
10
                                Тарова И.Н., Терехов Ю.П., Масина О.Н., Скоков А.В.


описаний. Например: Var f: intfile; или var f: file of integer.
  Файловая переменная является буфером между Паскаль-программой и
внешним устройством и должна быть логически с ним связана. Связь осуще-
ствляется оператором языка Паскаль:
   assign (<имя файловой переменной>,'<имя устройства>')
  Как правило, файлы для хранения данных связаны с устройством внешней
памяти на магнитных носителях (дисковод) и носят название внешние фай-
лы. Если, например, файл с именем primer.dat логически связан с дисково-
дом А:, то все данные, помещаемые в файл, будут храниться на этом дис-
ковом накопителе, а установка «окна» между программой и файлом будет
определяться через файловую переменную f оператором assign (f, 'primer.dat')
  Если внешним устройством является принтер, то связь осуществляется
оператором assign(f, '1st:'). Здесь 1st - логическое имя печатающего устрой-
ства. Ниже приветны логические имена внешних устройств ввода-вывода:
 con - консоль; trm - терминал; kbd - клавиатура; 1st - принтер; aux - бу-
 фер сети; usr - драйвер пользователя.
  После осуществления связи файловая переменная f отождествляется с
соответствующим файлом. Для работы с файлом его необходимо открыть,
а по окончании работы - закрыть. Файл открывается для чтения операто-
ром reset(f), для записи - оператором rewrite(f).
  Чтение и запись данных осуществляется известными командами
read/write, только в начале списка помещается имя файловой переменной:
       read (f, <список ввода>);
       readln (f, <список ввода>);
       write(f, <список вывода>);
       writeln(f, <список вывода>).
      Закрытие файла осуществляется командой close(f).
  Условно файл можно представить в виде ленты, у которой есть начало,
а конец нe фиксируется. Компоненты файла записываются на эту ленту
последовательно, дpyr за другом:
                              … M.
  F0 F1         F2   F3
                                  K.
   ^T.M.
  Здесь т.м. - текущий маркер, указывающий на рабочую позицию (окно)
файла; м.к. (маркер конца файла) - специальный код, автоматически фор-
мируемый вслед за последним элементом файла.
  Такого рода файлы называются файлами последовательного доступа. В
исходной версии Паскаля файлов прямого доступа, для которых можно
непосредственно «достать» любую компоненту, не предусмотрено; однако,
в Турбо-Паскале элементы прямого доступа есть (например, через функ-
цию seek).
  Команда rewrite(f) - открыть файл для записи - устанавливает файл в
начальное состояние режима записи; текущий маркер устанавливается на


                                     10