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

Стандартные процедуры для работы с файлами различного типа.

1. Процедура для связи файловой переменной с физическим файлом на диске.

ASSIGN (имя файловой переменной, ’путь к физическому файлу’);

2. Открыть файл для записи:

REWRITE(имя файловой переменной);

После записи в файл его надо обязательно закрыть с помощью процедуры close (имя файловой переменной);

3. Открыть файл для чтения:

RESET (имя файловой переменной);

После записи в файл его надо обязательно закрыть с помощью процедуры close (имя файловой переменной);

При записи и чтении файла текущий указатель устанавливается на нулевой элемент файла.

4.Процедура для переименования файла

RENAME (имя файловой переменной,’новое имя’);

  1. Процедура для уничтожения файла

ERASE (имя файловой переменной).

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

1. Для чтения и записи применяют процедуры READ, WRITE:

READ(имя файловой переменной, список имен переменных);var f:file of integer;

X,x1,x2,x3:integer;

Begin

Read(f,x); end;

из файла будет считана компонента и передана в х.

var f:file of integer;

X,x1,x2,x3:integer;

Begin

Read(f,x1,x2,x3); end;

Из файла 1 компонента будет считана и передана в х1, 2 компонента будет считана и передана в х2, 3 компонента будет считана и передан в х3.

WRITE(имя файловой переменной, список имен переменных); var f:file of integer;

X,x1,x2,x3:integer;

Begin

WRITE(f,x); end;

Компонента из х будет записана в файл f.

var f:file of integer;

X,x1,x2,x3:integer;

Begin

write(f,x1,x2,x3); end;

Компоненты из х1,х2,х3 будут поочередно считываться в файл f.

2. SEEK(имя файловой переменной, номер элемента); процедура, устанавливающая текущий указатель на нужный элемент файла.

TRUNСATE(имя файловой переменной); процедура, усекающая файл до текущей позиции, а текущий указатель устанавливается на конце файла.

Функции для работы с типизированными файлами.

1. К:=FILEPOS(имя файловой переменной); - функция, определяющая позицию, на которой стоит текущий указатель, К – величина целого типа.

2. M:=FILESIZE(имя файловой переменной);-функция определяющая размер файла(количество компонент в файле).

2. Практическая часть.

Задание 1. Наберите заданную программу для решения следующей задачи: Создать файл из 10 целых чисел. Найти их сумму, вывести её на экран. Поставить текущий указатель на шестой элемент и отсечь “хвост” файла.

Program sum;

Var

F:file of integer;

I,x,sum:integer;

Begin

Assign (f,’text’);

Rewrite(f);

For I:=1 to 10 do write(f,i);

Close(f);

Reset(f);sum:=0;

While not eof(f) do begin

Read(f,x);

sum:=sum+x; end;

close(f);

seek(f,6); truncate(f); end.

Измените программу так, чтобы создавался файл из 15 целых чисел, находилось и водилось на экран произведение только нечётных элементов этого файла, файл усекался после 9 элемента.

Задание 2. Наберите заданную программу для решения следующей задачи: Создайте файл из 5 слов, допишите в конец файла любое шестое слово. Выведите на экран новый файл.

Program slova;

Var

F:file of string;

I:integer; x,st:string;

Begin

Assign(f,’text’);

Rewrite(f);

For I:=1 to 5 do begin

Readln(x); write(f,x); end;

Close(f);reset(f);

Seek(f,5); readln(st);

Write(f,x);seek(f,0);

While not eof(f) do begin

Read(f,x);

Write(x); end;

Close(f); end.

Измените программу так, чтобы был создан файл из 10 слов, пописать в конец файла сначала одно слово, вывести полученный файл на экран, затем в конец полученного файла записать два слова и снова вывести полученный файл на экран, вывод элементов файла оформить с помощью подпрограммы.