[질문] 하노이 탑 프로그래밍에서요...

하노이 탑 프로그래밍에서요...
리컬시브 함수를 쓰지 않고
루프문을 썻서 프로그램을 하고 있는데 쉽지가 않네요..
리커시브 함수를 이용해서 하노이탑 문제를 컴으로 해결한 것입니다..
리커시브 함수를 가장 잘 이용한 예라 할수 있습니다.
잘 보시고 한번 해보시면 좋을것 같습니다.
#include
int count=0;
void tower (int n,int a,int b, int c){
printf("** %d %d %d %d ** ",n,a,b,c);
if (n==1){
count++;printf("%d %d -> %d ",count,a,c);
}
else{
tower(n-1,a,c,b);printf("$$$$$$$$$$$$$$$ ");
count++;printf("%d %d -> %d ",count,a,c);
tower(n-1,b,a,c);printf("!!!!!!!!!!!!!! ");
}
}
main()
{
int n;
int a=1,b=2,c=3;
printf("원판의 개수를 입력하시오");
scanf("%d",&n);
tower(n,a,b,c);
댓글 달기