Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
экз по информатике, шпоры.doc
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
192 Кб
Скачать

In Формальный параметр

— константа, разрешается только чтение значения соответствующего фактического параметра;

— переменная, разрешается как чтение, так и изменение значения соответствующего фактического параметра.

Out Формальный параметр

— переменная, разрешается изменение значения соответствующего фактического параметра. Допускается чтение границ и дискриминантов формального параметра и его подкомпонент; никакое другое чтение не допускается.

Тип формальных параметров может быть любым, но должен указываться только идентификатором (именем типа). Таким образом, имя типа формального параметра - массива должно быть задано предварительно в операторе Type, например: Type M= array[1..100]of real; Затем тип массива может указываться в заголовке процедуры, например: Procedure Name_P(p: M); Тип формальных параметров описывается только в заголовке процедуры. Список формальных параметров может отсутствовать, например: процедура Randomize; не имеет параметров.

Если в результате выполнения нескольких операторов получается одно значение переменной, то эти операторы можно включить в описание функции. Например, функция Sin(x); возвращает значение, которое присваивается переменной Y:=sin(x);

Свойства параметров значений

Параметры-значения используются только для передачи исходных данных из основной программы в процедуру или функцию.

Procedure horline (len:integer; s:chsr); {len, s- формальные параметры-значения}

Если формальный параметр объявлен как параметр-значение, то фактическим параметром может быть того же типа выражение. В процессе выполнения подпрограммы формальные параметры могут изменяться, но это никак не отразится на соответствующих фактических параметрах-переменных, которые сохранят те значения, которые имели до вызова подпрограммы, т.к. меняются не они, а их копия. Поэтому параметры-значения нельзя использовать для передачи результатов из подпрограммы в основную программу.

Для передачи в подпрограмму массива необходимо предварительно описать его тип

Const mmax=5; nmax=5 {}

Type massiv = array [1..mmax, 1..nmax] of real;

Procedure input_array (m,n: integer; var mas: massiv);

Свойства параметров- переменных

В списке формальных параметров они перечисляются после зарезервированного слова Var с указанием типа.

Procedure degree (x:real; n:byte; Var res: real); {x,n- параметры-значения, res- параметр-переменная}

Если формальный параметр определен как параметр-переменная, то при вызове процедуры ей передается сама переменная (адрес переменной в памяти) и изменение параметра-переменной приводит к изменению фактического параметра вызывающей программе.

Описание формальных параметров массивов

При описании массива указывают его имя, размерность и диапазон изменения каждого индекса, тип входящих элементов.

В общем виде массив описывается так:

<имя массива>: array [диапазон индексов массива] of <тип элементов>

Можно описать массив-константу, тип данных массив или переменную-массив, например:

const mas_const=(2.3, 4, 6.4, −2, −3.7); {постоянный массив из пяти вещественных элементов}

var

A : array[1..10] of real; {одномерный массив-переменная из десяти вещественных элементов}

B : array[0..50,0..20] of char; {двумерный массив-переменная, размером 51´21, из символьных элементов}

C : array[-3..4] of boolean; {одномерный массив-переменная из восьми элементов логического типа}

type norm_mas=array[1..10,1..10] of integer; {описание типа данных пользователя – массив 10´10 из целых чисел}

var A1, A2 : norm_mas; {двумерные переменные-массивы типа norm_mas}

Над массивами целиком определена операция присваивания, например, выражение вида

A1:=A2

означает, что всем элементам массива A1 присвоены значения элементов A2. Все остальные операции осуществляются над элементами массивов. Обратиться в программе к конкретному элементу массива можно

<имя массива> [<номер элемента>]

Обращение к элементу одномерного массива A:

A[i] − i-тый элемент массива,

A[1] − первый элемент массива.

Обращение в программе к элементу двумерного массива B:

B[i, j] − элемент, стоящий на пересечении i-ой строки и j-ого столбца,

B[1, 5] − элемент, стоящий пятым в первой строке,

B[3, j] − элемент третьей строки.

Описание параметров процедур и функций

Формат процедуры имеет вид:

procedure ИмяПроцедуры (формальные параметры);

{раздел описаний процедуры}

begin

{исполняемая часть процедуры}

end;

Формат описания функции:

function ИмяФункции (формальные параметры): тип результата;

{раздел описаний функции}

begin

{исполняемая часть функции}

end;

Формальные параметры в заголовке процедур и функций записываются в виде: