Rexx-기능
Rexx의 코드는 일반적으로 함수와 서브 루틴으로 나뉩니다. 함수를 사용하면 코드를 더 많은 논리 단위로 분리하는 데 도움이됩니다. 이러한 기능을 자세히 살펴 보겠습니다.
함수 정의
함수 선언의 구문은 다음과 같습니다.
FunctionName:
PARSE ARG arguement1, arguement2… arguementN
Return value
어디,
FunctionName − 기능에 할당 된 이름입니다.
PARSE ARG − 매개 변수가 함수로 전달되고 있음을 언급하는 데 사용되는 Rexx의 키워드입니다.
arguement1, arguement2… arguementN − 함수에 전달 된 인수입니다.
Return value − 함수가 반환하는 값입니다.
다음 프로그램은 Rexx에서 함수를 사용하는 방법에 대한 간단한 예입니다.
/* Main program */
say add(5,6)
exit
add:
PARSE ARG a,b
return a + b
위의 프로그램에 대해 다음 사항에 유의해야합니다.
우리는 2 개의 매개 변수 a와 b를 받아들이는 add라는 함수를 정의하고 있습니다.
이 함수는 return 문을 사용하여 a와 b의 합계를 반환합니다.
메인 프로그램의 끝을 나타 내기 위해 exit 문을 사용해야합니다.
위 프로그램의 출력은 다음과 같습니다.
11
인수 작업
Rexx에는 인수와 함께 작동하도록 만들 수있는 특정 함수가 있습니다. 그러한 주장 몇 가지를 살펴 보겠습니다.
arg
이 메서드는 함수에 대해 정의 된 인수 수를 반환하는 데 사용됩니다.
Syntax −
arg()
Parameters − 없음
Return Value −이 메서드는 함수에 대해 정의 된 인수의 수를 반환합니다.
Example −
/* Main program */
say add(5,6)
exit
add:
PARSE ARG a,b
say arg()
return a + b
Output − 위 프로그램을 실행하면 다음과 같은 결과가 나옵니다.
2
11
arg (인덱스)
이 메서드는 특정 위치의 인수 값을 반환하는 데 사용됩니다.
Syntax −
arg(index)
Parameter −
Index − 반환 될 인수의 인덱스 위치.
Return Value −이 메서드는 특정 위치의 인수 값을 반환합니다.
Example −
/* Main program */
say add(5,6)
exit
add:
PARSE ARG a,b
say arg(1)
return a + b
Output − 위 프로그램을 실행하면 다음과 같은 결과가 나옵니다.
5
11
재귀 함수
재귀 함수 또는 루틴은 자신을 호출하는 함수입니다. 모든 재귀 함수는 기존의 비재 귀적 방식으로 (또는 반복적으로) 코딩 될 수 있지만 때로는 재귀가 더 나은 문제 솔루션을 제공합니다. 모든 프로그래밍 언어가 재귀를 지원하는 것은 아닙니다. Rexx는 그렇습니다.
Rexx에서 재귀 함수를 사용하는 유명한 계승 프로그램의 예를 살펴 보겠습니다.
/* Main program */
do n = 1 to 5
say 'The factorial of' n 'is:' factorial( n )
end
return
/* Function to get factorial */
factorial : procedure
n = arg(1)
if n = 1 then
return 1
return n * factorial( n - 1 )
위 프로그램의 출력은 다음과 같습니다.
The factorial of 1 is: 1
The factorial of 2 is: 2
The factorial of 3 is: 6
The factorial of 3 is: 24
The factorial of 3 is: 120