В общем виде объявление
процедуры выглядит так: 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 — решения нет }
Знаете ли Вы, что такое "усталость света"? Усталость света, анг. tired light - это явление потери энергии квантом электромагнитного излучения при прохождении космических расстояний, то же самое, что эффект красного смещения спектра далеких галактик, обнаруженный Эдвином Хабблом в 1926 г. На самом деле кванты света, проходя миллиарды световых лет, отдают свою энергию эфиру, "пустому пространству", так как он является реальной физической средой - носителем электромагнитных колебаний с ненулевой вязкостью или трением, и, следовательно, колебания в этой среде должны затухать с расходом энергии на трение. Трение это чрезвычайно мало, а потому эффект "старения света" или "красное смещение Хаббла" обнаруживается лишь на межгалактических расстояниях. Таким образом, свет далеких звезд не суммируется со светом ближних. Далекие звезды становятся красными, а совсем далекие уходят в радиодиапазон и перестают быть видимыми вообще. Это реально наблюдаемое явление астрономии глубокого космоса. Подробнее читайте в FAQ по эфирной физике.