![](/user_photo/2706_HbeT2.jpg)
- •2.Строки переменной длины. Короткие и длинные строки. Формат задания. Представление в памяти. Операции, определенные над строковыми данными переменной длины.
- •1) Строковым переменным могут быть присвоены значения строковых
- •3.Процедуры и функции, определенные над строками переменной длины. Пример.
- •2) Insert (St1, St2, Poz) Вставляет строку St1 в строку St2, начиная с позиции Poz. Если значение
- •3) Str (I, St) Преобразует числовое значение величины I и помещает результат в строку St. Величина I должна иметь целочисленный или вещественный тип.
- •4) Val (St, I, Cod) Преобразует значение St в величину целочисленного или вещественного
- •4.Процедуры. Синтаксис объявления процедур. Вызов процедуры. Организация связи по данным при использовании процедур без параметров.
- •X1, y1, x2, y2, d: Real; {Объявление глобальных переменных}
- •X1, y1, x2, y2 – координаты первой и второй точек}
- •5.*Виды формальных параметров подпрограмм. Параметры-значения. Назначение, синтаксис. Механизм организации взаимосвязи с фактическими параметрами при использовании параметров-значений.
- •X1, y1, x2, y2, d: Real; {Объявление глобальных переменных}
- •7*Параметры без типа. Назначение, синтаксис. Способы обеспечения совместимости с фактическими параметрами.
- •8*Параметры процедурного типа. Назначение, синтаксис. Условия совместимости с фактическими параметрами. Пример.
- •9.Функции. Описание функций. Вызов функции.
- •10.Использование производных типов в качестве параметров подпрограмм. Открытые массивы.
- •11.Рекурсивные подпрограммы. Виды рекурсии. Достоинства и недостатки рекурсивной записи подпрограмм. Явная рекурсия.
- •12.Директива Forward. Неявная рекурсия.
- •13.Записи. Синтаксис задания. Записи без вариантной части. Операции над записями и над полями.
- •14.Записи с вариантами. Синтаксис задания. Особенности задания записей с полем признака и без него.Записи, содержащие только общую часть, имеют строго определенную структуру.
- •15.Оператор присоединения. Назначение. Формат. Полная и сокращенная формы оператора присоединения. Примеры использования.
- •I1, i2, I: Set Of 1..10; {Используется задание базового типа}
- •17.Множественные выражения. Операции и встроенные процедуры над множествами. Ввод-вывод множественных переменных.
- •If b In Mn Then {Анализ вхождения очередного значения базового
- •18. Типизованные константы-записи (с вариантами и без) и константы-множества. Назначение. Синтаксис задания. Примеры использования.
- •19.Файлы. Логический и физический файл. Способы доступа к элементам файла. Типы файлов. Синтаксис задания.
- •4)Nul – нулевое устройство. Для него при выводе не осуществляется никаких действий. При попытке чтения возникает ситуация конца файла.
- •6)‘’ – Использование пустой строки вместо имени Name. В этом случае файловая переменная f связывается с Con (по аналогии с пунктом а)).
- •1) Процедура Assign
- •3) Процедура Write (f, v1 [, v2, … , vn])
- •5) Процедура Read (f, V [, v2, …, vn])
- •6) Функция Eof(f) (End Of File) – служит для определения факта выхода при чтении за пределы файла.
- •7) Процедура Seek (f, n)
- •9) Функция Filesize(f) Функция Filesize(f) – возвращает текущий размер файла (число элементов
- •10) Процедура Close (f)Процедура Close (f) – предназначена для закрытия открытого файла f.
4)Nul – нулевое устройство. Для него при выводе не осуществляется никаких действий. При попытке чтения возникает ситуация конца файла.
5) Crt – устройство текстового ввода-вывода. Аналогично устройству Con, но имеет ряд дополнительных функций управления экраном (например, установка цветов, указание места на экране для вывода и т.п.). Crt не поддерживается операционной системой.
6)‘’ – Использование пустой строки вместо имени Name. В этом случае файловая переменная f связывается с Con (по аналогии с пунктом а)).
Например,
Assign (F, ‘’);
Процедура Assign всегда предшествует другим процедурам ввода-вывода.
Ее нельзя применять к уже открытому файлу.
Для работы с типизованными файлами существуют следующиепроцедуры и функции ввода-вывода:
1) Процедура Assign
Процедура Assign – связывает файловую переменную с внешним файлом
на диске.2) Процедура Rewrite (F)
Процедура Rewrite (F) – создает и открывает новый файл F.Окно (позиция доступа) устанавливается на первую позицию файла.Если файл был ранее открыт, то он предварительно закрывается, а затем
повторно открывается.Если ранее в файл были записаны какие-либо элементы, они становятся
недоступными.Перед использованием процедуры Rewrite файл F должен быть связан с внешним файлом (набором данных) процедурой Assign.Таким образом, процедура Rewrite создает новый внешний файл с именем, присвоенным переменной F процедурой Assign.
3) Процедура Write (f, v1 [, v2, … , vn])
Процедура Write (F, V1 [, V2, … , VN]) – записывает в ту позицию файла,
на которую указывает окно, очередной элемент файла, равный значению переменной Vi. После записи переменной Vi окно сдвигается на следующую
позицию файла. Если окно достигает конца файла, файл расширяется.Перед первым выполнением в программе процедуры Write файл
обязательно должен быть открыт.4) Процедура Reset (F)
Процедура Reset (F) – открывает существующий файлF.
Фактически при этом открывается внешний файл с именем, присвоенным переменной F процедурой Assign. Если файл с данным именем не существует,
возникает сообщение об ошибке.Окно файла устанавливается на первую позицию файла. Если файл был предварительно открыт, то он закрывается и повторно открывается. Процедура Reset(F) может быть применена к файлу любое количество
раз. При выполнении этой процедуры содержимое файла не изменяется.Результат выполнения процедуры Reset(F) изображает рисунок 5.5.Рисунок 5.5 – Результат выполнения процедуры Reset(F)
5) Процедура Read (f, V [, v2, …, vn])
Процедура Read (F, V [, V2, …, VN]) – обеспечивает чтение текущего элемента файла F (того элемента, на который указывает окно) в переменную Vi
и передвигает окно на следующую позицию файла.
Чтение из файла с помощью процедуры Read можно производить только для предварительно открытого файла.Файлы с типом всегда допускают как чтение, так и запись,независимо от того, были они открыты с помощью процедуры Reset или
Rewrite.Таким образом, доступна только та компонента файла, которая определена положением окна. Если необходима компонента, которая
предшествует окну, то при последовательном доступе нужно установить окно на начало файла с помощью процедуры Reset, а затем, последовательно
перебирая компоненты с помощью процедуры Read, дойти до нужной компоненты.