В общем виде объявление
процедуры выглядит так: procedure Имя (var параметр1: тип1; ... var параметрК:
типК) ; var
//
здесь объявление локальных переменных
begin
//
здесь инструкции процедуры
end;
где:
procedure — зарезервированное
слово языка Delphi, обозначающее, что далее следует объявление процедуры;
имя — имя процедуры, которое
используется для вызова процедуры;
параметр K — формальный параметр,
переменная, которая используется в инструкциях процедуры. Слово var перед
именем параметра не является обязательным. Однако если оно стоит, то это означает,
что в инструкции вызова процедуры фактическим параметром обязательно должна
быть переменная.
Параметры процедуры
используются для передачи данных в процедуру, а также для возврата данных из
процедуры в вызвавшую ее программу.
В качестве примера
в листинге 6.5 приведена процедура решения квадратного уравнения (которое в
общем виде записывается так: ах2 + Ьх+ с = 0). У процедуры шесть
параметров: первые три предназначены для передачи в процедуру исходных данных
— коэффициентов уравнения; параметры xi и х2 используются для возврата результата
— корней уравнения; параметр ok служит для передачи информации о том, что решение
существует.
Листинг 6.5.
Процедура SgRoot
//
решает квадратное уравнение
procedure
SqRoot(a,b,c : real;
var
xl,x2 : real;
var
ok : boolean);
{
a,b,c — коэффициенты уравнения x1,x2 — корни уравнения ok = True — решение есть
ok = False — решения нет }
Знаете ли Вы, что, как не тужатся релятивисты, CMB (космическое микроволновое излучение) - прямое доказательство существования эфира, системы абсолютного отсчета в космосе, и, следовательно, опровержение Пуанкаре-эйнштейновского релятивизма, утверждающего, что все ИСО равноправны, а эфира нет. Это фоновое излучение пространства имеет свою абсолютную систему отсчета, а значит никакого релятивизма быть не может. Подробнее читайте в FAQ по эфирной физике.