Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Подпрограмма - процедура





В отличие от подпрограммы – функции подпрограмма – процедура в качестве результата может возвращать несколько значений. Структура процедуры имеет вид:

Procedure имя (а1;...;аn);

 
 
Раздел описания локальных меток, констант и переменных

 


Группа операторов
Begin

 

 

End;,

где a1;…an – список формальных параметров с указанием типа. Причем при указании типа параметра обязательно выделяют параметры, которые в ходе выполнения программы не меняют своего значения и которые могут его изменить. Если параметр меняет свое значение (обычно это результат), то перед ним ставится служебное слово Var.

Пример. Составить подпрограмму умножения двух квадратных матриц С=А*В m-го порядка.

 

Type Matr = array [1..10, 1..10] of real;

Var A, B, C: Matr;

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Procedure MultMat (n: integer; Mat1, Mat2:Matr; Var Mat3:Matr);

var i.k,j: integer;

begin

for 1:=1 to n do

for j:=1 to n do begin

Mat3[i,j]:=0.0;

for k:=l to n do

Mat3[i,j]:=Mat3[i,j]+Mat1[i.k]*Маt2[k,j];

end;

end;

 

Здесь массивы Mat1 и Mat2 в ходе выполнения процедуры не меняют своих значений, поэтому для них указывается только тип. Массив Mat3 формируется в процедуре, соответственно при описании его типа перед именем ставится ключевое слово Var. Переменные i, j, k задействованы только внутри процедуры, поэтому они описаны как локальные переменные.

Вызов процедуры осуществляется по имени, с указанием фактических параметров. Так, для рассматриваемого примера обращение к процедуре может выглядеть так:

MultMat (m. A, B, С);

Результат перемножения двух матриц располагается в массиве С.

Описание процедуры служит для определения процедуры в рамках текущей процедуры или программы. Выполнение процедуры начинается с оператора процедуры и после завершения процедуры выполнение программы продолжается с оператора, следующего непосредственно за оператором вызова процедуры.

 

Date: 2015-08-15; view: 259; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.005 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию