StartprogrammingusingObjectPascal:Functions

From 흡혈양파의 번역工房
Revision as of 10:28, 26 July 2012 by Onionmixer (talk | contribs) (SPOP 함수 페이지 추가)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

함수

함수는 프로시저와 유사하지만 값을 되돌리는 기능이 또 있습니다. 우리는 이전에 텍스트를 대문자로 바꿔주는 UpperCase와 숫자의 절대 값을 되돌려주는 Abs와 같은 함수를 사용했습니다.

다음 예제에서는 두 개의 정수값을 받아서 값들의 합을 되돌려주는 GetSumm 함수를 작성했습니다.

function GetSumm(x, y: Integer): Integer;
begin
    Result := x + y;
end;

var
    Sum: Integer;
begin
    Sum := GetSumm(2, 7);
    Writeln(Summation of 2 + 7 =  , Sum);
    Write('Press enter key to close');
    Readln;
end.

함수를 정수형으로 선언하고, 함수의 되돌릴 값을 나타내기 위해 Result 키워드를 사용했음을 눈여겨 보도록 합니다.

메인 프로그램에서 함수의 값을 받기 위해 Sum변수를 사용했지만, 이 중간 변수를 없애고 Writeln 프로시저에서 이 함수를 호출할 수 있습니다. 이것이 함수와 프로시저의 차이점 중 하나입니다. 다른 프로시저나 함수에서 함수를 입력 인자로써 호출할 수 있지만, 프로시저는 다른 함수와 프로시저의 인자로서 호출할 수 없습니다.

function GetSumm(x, y: Integer): Integer;
begin
    Result := x + y;
end;

begin
    Writeln(Summation of 2 + 7 =  , GetSumm(2, 7));
    Write('Press enter key to close');
    Readln;
end.

다음 예제에서는 함수를 사용하여 식당 프로그램을 다시 작성했습니다.