아하
생활

생활꿀팁

힘찬닭191
힘찬닭191

mystery(5) 호출 횟수는?

(5)=(4)+(3)

(4)=(3)+(2)

(3)=(2)+(1)

(2)=(1)+(0)

1과 0은 1이니까 (5)호출 1번을 포함하면 9번 아닌가요?

15번이라는데... 이해가 안갑니다...

55글자 더 채워주세요.
2개의 답변이 있어요!
  • 깜찍한거위149
    깜찍한거위149

    안녕하세요? 아하(Aha)에서 활동하고 있는 탤런트뱅크 진건수 전문가입니다.

    위 그림에서 보듯이 mystery(5)를 호출하면 함수 내부에서 다시 mystery(4)와 mystery(3)을 호출합니다.

    mystery(4)는 mystery(3)과 mystery(2)를,

    mystery(3)는 mystery(2)과 mystery(1)을 호출하게 됩니다.

    mystery(1)과 mystery(0)은 숫자 1을 return 하고 있구요.

    이런식으로 계속하다보면...

    총 15번 호출이 되는 것을 그림에서 볼 수 있습니다.

  • return 에 재귀함수가 한번 더해져서 출력되기 때문에

    이런식으로 출력일 것 같습니다.

    5 -

    4+3 -

    {3+2} + {2+1} -

    {(2+1) + (1+0)} + {1+0 + return} -

    {[(1+0) + return] + return } + {return}

    이렇게 15번이 아닐까요?