
- •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.
X1, y1, x2, y2, d: Real; {Объявление глобальных переменных}
N, I: Integer; {Объявление глобальных переменных}
{Процедура без параметров}
Procedure Rast1;
Begin
<Идентификатор_процедуры>
<Вызов_процедуры >::=
( )
,
<Аргумент>
10
D:=Sqrt (Sqr (X1 - X2) + Sqr (Y1 - Y2)) {D – расстояние между точками;
X1, y1, x2, y2 – координаты первой и второй точек}
End;
{Вызывающая программа}
Begin
Writeln (‘Введите количество пар точек’);
Readln (N);
For I:=1 To N Do
Begin
Writeln (‘Введите координаты первой точки в виде: абсцисса
ордината’);
Readln (X1,Y1);
Writeln (‘Введите координаты второй точки в виде: абсцисса
ордината’);
Readln (X2, Y2);
Rast1; {Оператор вызова процедуры Rast1}
Writeln (D);
End
End.
В данном примере связь между вызывающей программой и процедурой Past1 осуществляется через глобальные переменные X1, X2, Y1, Y2, D. Недостаток процедур без параметров – жесткая фиксация исходных данных. Например, если процедуру без параметров приходится использовать в
различных точках вызывающей программы для различных имен переменных,
то перед вызовом процедуры необходимо обеспечить переприсваивание имен –
имена переменных должны соответствовать именам, используемым в теле
процедуры. Для устранения этого недостатка используются процедуры с
параметрами.
5.*Виды формальных параметров подпрограмм. Параметры-значения. Назначение, синтаксис. Механизм организации взаимосвязи с фактическими параметрами при использовании параметров-значений.
Использование параметров повышает удобство использования процедур,
т.к. позволяет не фиксировать исходные значения, к которым применяется
процедура. Исходные значения конкретизируются при каждом обращении к
ней.Формальные параметры – это идентификаторы переменных, имена
подпрограмм, используемых в операторах внутри данной подпрограммы,
заменяемые аргументами при ее вызове.
Синтаксическая диаграмма задания формальных параметров в заголовке
процедуры при ее объявлении имеет вид, который иллюстрируют рисунок 1.5.
Виды формальных параметров подпрограмм:параметры-значения,параметры-переменные,параметры-константы,выходные параметры,параметры без типа,параметры процедурного типа. Параметр-назначения-это группа параметров передача которого не использует зарезервированного слова var,const или out и за которыми следует тип.Данный тип применяется для передачи в подпрограмму ее входных данных.Для каждого параметра значения при вызове подпрограммы создается локальная переменная.Эти переменные существуют только во время выполнения подпрограммы.При входе в подпрограмму присв.знач.соотв.факт. параметров вызова процедуры.В качестве фактического параметра может использоватся выражение.При применении параметров значения фактического параметра используются только при входе в подпрограмму с целью передачи задаваемых ими значений локальн.перемен.;после этого фактические параметры становятся недоступными подпрограмме.Поэтому подпрограмма не может изменить значение фактического параметра и с помощью параметр.знач. нельзя представить рез.вып.подпр. если они должны передав. в вызыв. подпрограмму.*Пример Вычисление расстояний между N парами точек на плоскости.
Использование процедуры с параметрами-значениями.
Program R2;
Var