Практическая работа №9
Тема: Составление программ, работающих с нетипизированными файлами
Цель: применение алгоритмов записи, чтения и дозаписи нетипизированных файлов на практике.
Вид работы: фронтальная.
Время выполнения: 2 часа.
Теоретический материал:
Описание нетипизированных файлов:
var f: file;
Нетипизированные файлы содержат данные любых типов, запись, чтение и дозапись происходит байтами.
Основные процедуры и функции для работы с нетипизированными файлами:
1) assign(f, ‘путь к файлу’) – связать файл с файловой переменной
2) rewrite(f) – открыть файл для записи
3) reset(f) – открыть файл для чтения
4) blockwrite(f, x, n) – записать в файл значение переменной x, n – количество записываемых байт
5) blockread(f, x, n) – считать из файла значение переменной x, n – количество считываемых байт
Задания:
1) Создайте нетипизированный файл с именем ‘1.res’, записав в него целые числа от 1 до n. Выведите содержимое файла на экран.
2) Считайте из файла ‘1.res’ числа, каждое число умножьте на 10 и осуществите их дозапись в файл.
Ход работы:
В тетрадь оформите листинг второй программы с комментариями
1. Алгоритм решения задачи можно представить так:
а) описать файловую переменную – var f: file; и другие переменные;
б) связать файловую переменную с файлом – assign(f, ‘1.res’);
в) открыть файл для записи – rewrite(f);
г) ввести с клавиатуры значение n – readln(n);
д) организовать параметрический цикл по i от 1 до n;
е) записать параметр цикла в файл – blockwrite(f, i, 2);
ж) закрыть файл – close(f);
з) открыть файл для чтения – reset(f);
и) организовать цикл пока не достигнут конец файла – while not eof(f) do
к) считать символ – blockread(f, i, 2);
л) вывести на экран значение переменной i;
м) закрыть цикл;
н) закрыть файл – close(f).
2. Вторая задача решается с использованием файла, созданного в первой программе. Вводится вспомогательная переменная для описания одномерного массива x. В массив x будем записывать числа, считанные из файла ‘1.res’. Для этого открываем файл для чтения, в цикле считываем элементы, умножаем их на 10 и записываем в массив, закрываем файл. Затем открываем файл уже для записи, подводим файловый указатель в конец файла (операция seek(f, filesize(f)) – устанавливает указатель за последним элементом файла), записываем в файл элементы массива x, закрываем файл.
Контрольные вопросы и задания:
1) По каким признакам классифицируются файлы в Pascal?
2) Как объявляется нетипизированный файл?
3) В чём отличие типизированных файлов от нетипизированных?
4) Какие процедуры и функции используются для работы с нетипизированными файлами?
Скачано с www.znanio.ru
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.