Delphi. Pascal
Урок 12. Функции
Объявление функции
function ИмяФункции(var Параметр1: Тип 1; var Параметр2: Тип2; var ПараметрJ: TиnJ ) : Тип; const { описание констант } var { описание переменных } begin { инструкции функции } Result:=Значение; end;
Примечание: слово var ставится перед именем параметра в том случае, если параметр используется для возврата значения из функции в вызвавшую ее программу.
Функция | Пример функции для вычисления натуральной степени (n) целого числа (m) |
program имя-программы; | program primer; var x,y: integer; |
function имя(параметры): тип-результата; | function power(m,n:integer):integer; |
описания локальных величин | var s,i: integer; |
begin | begin |
операторы функции | s:=1; for i:=1 to n do s:=s*m; power:=s |
end; | end; |
BEGIN | BEGIN |
операторы программы | read(x,y); writeln(power(x,y)) |
END. | END. |
Функции, в отличие от процедур, рассмотренных на прошлом уроке, возвращают некоторое значение. Это, пожалуй, основное отличие между ними.
Вот пример объявления и использования функции, которая принимает два параметра целого типа и возвращаем их максимум:
...
//Объявление функции.
function max(X, Y: Integer): Integer;
begin
if X>Y then
max:=X
else
max:=Y;
end;
var
r: Integer;
begin
//Вызов функции.
r:=max(3, 5);
Writeln(r);
Readln;
end.
Как вы видите, при объвлении функции, в отличие от объявления процедуры, мы пишем тип возвращаемого значения:
...
function max(X, Y: Integer): Integer;
...
Кроме того, обратите внимание, как функция возвращает значения - мы просто присваиваем имени функции результат:
...
max:=X
...
max:=Y;
...
max тут - это имя нашей функции.
Приведенный фрагмент выведет, разумеется, число 5.