재귀. 루프 시뮬레이션
우리는 재귀가 서브루틴에 포함된 명령을 반복적으로 실행하는 것을 보았습니다. 그리고 이것은 차례로 사이클의 작업과 유사합니다. Prolog와 같이 루프 구성이 전혀 없는 프로그래밍 언어가 있습니다.
루프
for
의 작업을 시뮬레이션해 봅시다.
for
루프에는 걸음 수 카운터 변수가 포함되어 있습니다. 재귀 서브루틴에서 이러한 변수는 매개변수로 전달될 수 있습니다.
// 두 개의 매개변수가 있는 프로시저 LoopImitation().
// 첫 번째 매개변수 – 걸음 수 카운터, 두 번째 매개변수 – 총 단계 수.
무효 LoopImitation(int i, int n)
{
cout << "안녕 엔" << 나는 << 끝; // i의 모든 값에 대해 반복되는 연산자
if (i < n) // 루프 카운터가 n이 될 때까지,
{ // 매개변수 i+1을 사용하여 프로시저의 새 인스턴스를 호출합니다(다음 값 i로 이동).
LoopImitation(i + 1, n);
}
}