본문 바로가기
VBA

[VBA_재귀함수] 조합수만큼 나열하기

by 일등미노왕국 2021. 8. 28.

이번에 만들 조합은 외부로부터 문자열과 조합수를 입력받은 후 모든 순열을 출력하는 구문이다.

이글을 처음 보시는 분은 이전 글을 먼저 보고 오길 바란다.

https://1stminokingdom.tistory.com/20

 

[VBA_재귀함수] 모든 경우의 수 순열구하기

VBA를 배우는 것중 또 하나는 알고리즘을 하나둘씩 배워가는 즐거움이 있다. 최근에 가장 좋아하는 알고리즘으로는 재귀문인데 문제를 접할 때마다 풀기 싫지만 풀면 뿌듯한 뭐 이런 이상한 기

1stminokingdom.tistory.com

구문은 이렇다. Inputbox를 통해서 문자열을 입력받고 , 조합수를 입력 받으면 재귀함수를 호출하여 모든 순열을 조합하여 화면에 뿌려주게 된다. 어차피 이것도 구문의 루틴이 있기 때문에 많이 보고 많이 연습하면 자연스러워질것이다.

이 구문역시 복잡해보이지만 inputbox 구문을 빼면 실제로 이 로직을 풀기 위한 구문은 몇줄 되지 않는다.

재귀함수는

1. 처음 재귀 호출을 어떻게 할것인가.

2. 처음 이후 재귀 호출을 어떻게 조합하여 호출할것인가

3. 재귀의 귀속 구문을 어떻게 만들것인가

 

이 세개의 해답을 가지고 움직여야 무한 루프나 stack over에 빠지지 않는다.

코딩실력이 모든 경우의 수 조합처럼 무한하게 늘어났으면 좋겠다...

조합수만큼나열하기(21.08.28).xlsm
0.05MB

댓글