StartprogrammingusingObjectPascal:FunctionAsAnInputParameter

From 흡혈양파의 번역工房
Jump to: navigation, search

입력 인자로서의 함수

이전에 이야기 한 바와 같이, 함수를 프로시저 혹은 함수의 입력 인자로서 호출할 수 있는데, 함수를 값과 같은 존재로 다룰 수 있기 때문입니다.

아래 예제를 보도록 하겠습니다.

function DoubleNumber(x: Integer): Integer;
begin
    Result:= x * 2;
end;

// Main

begin
    Writeln('The double of 5 is : ', DoubleNumber(5));
    Readln;
end.

참고로 Writeln 프로시저에서 DoubleNumber 함수를 호출했습니다.

다음 수정한 예제에서는 함수의 결과를 저장하기 위해 중간 변수를 사용했고, Writeln 프로시저 사용한 중간 변수를 입력으로 사용했습니다.

function DoubleNumber(x: Integer): Integer;
begin
    Result:= x * 2;
end;

// Main

var
    MyNum: Integer;
begin
    MyNum:= DoubleNumber(5);
    Writeln('The double of 5 is : ', MyNum);
    Readln;
end.

또한 if 조건문과 순환문의 조건부에서 함수를 호출할 수 있습니다

function DoubleNumber(x: Integer): Integer;
begin
    Result:= x * 2;
end;

// Main

var
    MyNum: Integer;
begin
    if DoubleNumber(5) > 10 then
        Writeln('This number is larger than 10')
    else
        Writeln(This number is equal or less than 10);
    Readln;
end.