Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
вопросы к зачету ОАИП 2012.DOC
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
77 Кб
Скачать
☆

Теоретический материал:

Описание нетипизированных файлов:

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. Какие процедуры и функции используются для работы с нетипизированными файлами?

Рекомендуемая литература: 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.8, 2.3, 2.4, 2.5.

  1. Функции и процедуры для работы с нетипизированными файлами в Pascal: описание, назначение. Алгоритмы записи, чтения, дозаписи в нетипизированный файл (50 баллов)

  2. Функции и процедуры для работы с текстовыми файлами в Pascal: описание, назначение. Алгоритмы записи, чтения, дозаписи в текстовый файл (50 баллов)

  3. Основные принципы модульного програмирования, организация пользовательского модуля и его струк тура (50 баллов)

  4. Назначение различных частей пользовательского модуля в Pascal, включение и использование пользовательского модуля в основной программе (50 баллов)

  5. Обзор стандартных библиотечных модулей в Pascal (50 баллов)

  6. Процедуры и функции для работы с модулем Crt в Pascal (50 баллов)

  7. Процедуры и функции для работы с модулем Graph в Pascal (50 баллов)

  8. Понятия и свойства ООП: объект, инкапсуляция, полиморфизм, наследование, иерархия. Приведите примеры описания и использования объектов в программировании (50 баллов)