- •1. Понятие алгоритма и его свойства
- •2.Способы представления алгоритма
- •3. Средства описания языков программирования
- •4. Классификация языков программирования
- •5. Базовые элементы языка Паскаль
- •6.Структура программы
- •7.Стандартные типы данных.Числовые типы.
- •8. Стандартные не числовые типы данных
- •9. Выражения и виды операций
- •10. Стандартные функции
- •10.2 Стандартные функции
- •11. Операторы действия
- •12. Процедуры ввода
- •13. Процедуры вывода
- •14. Структурные операторы. Составной оператор. Условные операторы.
- •15. Операторы цикла.
- •17. Структурированные типы данных. Массивы.
- •18. Строки
- •19. Записи
- •20. Процедуры. Процедуры без параметров. Параметры- значения.
- •21. Процедуры. Параметры-переменные.
- •22. Пользовательские функции
- •23. Рекурсия
- •24. Понятие файла
- •25. Процедуры и функции для работы с файлами
- •26.Текстовые файлы
- •27. Модули
- •28. Распределение памяти при выполнении программ
- •29.Указатели. Ссылочные переменные
- •30. Процедуры для работы со ссылками
- •33. Структурное программирование.
- •34. Нисходящее проектирование программ
25. Процедуры и функции для работы с файлами
Подпрограммы для работы со всеми типами файлов.Процедуры:
assign (var fp; filename : string) - связывает фай, ловую переменную f р с физическим файлом, имя которого задано в строке filename. Если путь к файлу не задан, предполагается, что он находится в текущем каталоге.rewrite (var fp) - открывает новый файл для записи данных. Если физический файл, с которым связана переменная f р, существовал ранее, он очищается, то есть вся информация из него теряется.reset (var fp) - открывает существующий файл для последующего чтения или записи данных.close (var fp) - закрывает открытый файл. Типизированные файлы Формат типизированного файла: type <имя типа> =flie of <тип компонента>; var <имя файловой переменной>:<имя типа>;Для ввода информации из файла, открытого для чтения, используется оператор:read(<имя файловой переменной>,<список ввода>);При этом происходит считывание данных из файла в переменные, имена которых указаны в списке ввода. Переменные должны быть того же типа, что и компоненты файла. Вывод информации выполняется оператором: write (<Имя файловой переменной>,<список вывода>);Примеры описания файлов: type n = file of integer; {тип-файл целых чисел};с = file of char; {тип- файл символов};massiv=array[1..5] of real; var fl:n; f2:c;z : file of word;f: file of massiv; {файл, компонентами которого являются массивы вещественных чисел}
26.Текстовые файлы
Для описания текстовых файлов в Паскале имеется стандартный файловый тип text, например: var in_file:text;Доступ к текстовому файлу организуется последовательно, то есть программа не может в любой момент времени считать из него произвольную порцию информации или произвести запись в произвольное место файла.Для работы с текстовым файлом используются процедуры assign, rewrite, reset, close. Однако текстовый файл, открытый процедурой reset, доступен только для чтения, в отличие от типизированных файлов.Для записи в текстовый файл или чтения из него можно использовать процедуры Write, WriteLn, Read и ReadLn. В этом случае в качестве первого параметра в этих процедурах указывается файловая переменная, напримерReadln(in_file, а, х); Здесь происходит присваивание переменным а и х значений двух очередных элементов из файла, связанного с файловой переменной in_f ile. Текстовый файл может использоваться для хранения численных значений. При считывании значений или их записи в файл происходит автоматическое преобразование из числового формата в символьный, и наоборот. Оператор вывода допускает описание формата вывода. Если а является выражением целого, булевого или строкового типа, то оператор WriteLn (in_f ile, a: n); означает запись значения переменной а в правые позиции поля размером в п позиций.Append(var fp)- Открывает существующий файл, связана ный с файловой переменной f р, для добавления в него новых записей; Eoln(var fp)- Возвращает Т rue, если указатель файла достиг маркера конца строки. В противном случае False.; SeekEoln(var fp)- Аналогична предыдущей, но указатель файла пропускает все знаки табуляции, предшествующие маркеру конца строки.