![](/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.
9.Функции. Описание функций. Вызов функции.
Объявление функции размещается в разделе процедур и функций того блока, в котором эта функция вводится в употребление.Объявление функции аналогично объявлению процедуры за исключением
следующих отличий.Первое отличие.
Заголовок функции имеет следующий вид, который иллюстрирует рисунок 1.7.Заголовок функции определяет ее имя, список формальных параметров и
тип возвращаемого значения. Заголовок начинается служебным словом Function.<Список_формальных_параметров> определяется точно так же, как и при
описании процедуры. В качестве формальных параметров могут
использоваться параметры-значения, параметры-переменные, параметры-
константы, параметры без типа, параметры процедурного типа.
Заголовок функции завершается указанием имени типа возвращаемого
значения функции (<Идентификатор_типа>). При его описании может быть
использовано только имя типа, но не его задание. Поэтому тип возвращаемого
значения должен быть стандартным или предварительно описанным.
Рисунок 1.7 – Синтаксическая диаграмма
заголовка функции
Второе отличие.Как и процедуры, функции могут изменять значения глобальных
переменных, параметров-переменных и параметров без типа. Но кроме этого каждая функция вычисляет значение, называемое возвращаемым значением
функции. Данное значение передается в точку вызова функции. Чтобы установить возвращаемое значение, необходимо присвоить это значение
идентификатору функции. Поэтому в теле функции обязательно должен присутствовать хотя бы один оператор присваивания, в левой части которого
записано имя описываемой функции без параметров:
<Идентификатор_функции> := <Выражение>
Хотя бы один оператор такого вида должен быть выполнен.Язык Паскаль допускает функции с возвращаемыми значениями любого
скалярного типа, типа String и типа указатель.
Для обращения к функции в вызывающей программе используется вызов функции.Вызов функции – это имя функции, за которым следует взятый в круглые
скобки список фактических параметров:
<Вызов_функции> [(Список_фактических_параметров)].
Количество фактических параметров должно быть равно количеству формальных параметров в описании функции, типы фактических параметров
должны соответствовать типам формальных параметров.
Например, для примера 1.8 вызов функции в вызывающей программе может быть записан следующим образом: Simvol (X, Y),где фактический параметр X должен иметь тип String, а фактический параметр
Y – тип Char.Поскольку функция задает правило вычисления возвращаемого значения,
то вызов функции представляет собой данное значение. Это значение используется обычно в качестве операнда какой-либо операции. Таким образом, вызов функции может быть записан везде, где по синтаксису допускается использование выражений (например, в правой части оператора присваивания).Применительно к примеру 1.8 вызов функции в вызывающей программе
может быть использован, например, так:
Z := Simvol (X, Y) Or Simvol (A, B);
Здесь в выражении используется два вызова функции Simvol. При его вычислении в точки вызова передаются возвращаемые значения функции.
Далее данные значения участвуют в вычислении выражения.