현재 재귀 함수에 대한 할당 수행. 피보나치 프로그램을 요청 받았고 많은 문제없이 그렇게했습니다. 하지만 카운터를 만들 필요가 있습니다. 여기에 붙어 있습니다.C++ 함수 내부의 재귀 카운터
나는 어떻게 나는이에 카운터를 추가하려면이 기능
int fibonacci(int n)
{
if(n == 0)
{
//my fibonacci code
}
else if(n == 1)
{
//my fibonacci code
}
else
{
//my fibonacci code
}
}
있어? 카운터를 추가 할 때마다 잘못된 숫자가 반환됩니다.
편집 그냥 명확히하기 위해 제 기능은 피보나치 숫자를 생성하는 데 적합합니다. 필자는 함수 내부에 카운터를 추가하여 피보나치 수를 생성 할 때마다 호출되는 횟수를 볼 수 있습니다.
나는 이후 main 함수의 카운터를 초기화 한 다음 재귀에서 카운터를 증가시키는 방법을 시도했지만 번호가 정확한지는 알 수 없습니다. 예를 들어 피보나치 수가 610 인 경우 함수를 609 번 호출한다고 가정합니다. 맞습니까?
당신은 어떻게 작동하지 않는 카운터를 추가하려면 : 통화를 계산하는 것은과 같이, 참조 카운터 변수를 전달하고, 각 통화의 시작 부분에 한 번을 증가시켜 쉽게 달성해야 하는가? – sharptooth
먼저 주석이있는 재귀 호출을 추가해야합니다. 기본적으로 n은 재귀 수준의 카운터로 바뀝니다. 무엇을 계산 하시겠습니까? f의 호출? – mvw
카운터에 in-function'static' 변수를 사용하십시오. – lapk