하노이 타워는 수학 퍼즐입니다. 이는 3개의 막대와 막대 위에 미끄러지는 다양한 크기의 여러 디스크로 구성됩니다. 퍼즐은 크기가 오름차순으로 막대 위에 깔끔하게 쌓인 디스크로 시작되며 가장 작은 디스크가 맨 위에 옵니다. 동일한 스택을 세 번째 막대로 옮겨야 합니다.
퍼즐의 목표는 다음과 같은 간단한 규칙에 따라 전체 스택을 다른 막대로 옮기는 것입니다. −
한 번에 하나의 디스크만 이동할 수 있습니다.
각 이동에는 한 더미에서 위쪽 디스크를 가져와 다른 더미 위에 놓는 작업이 포함됩니다. 즉, 디스크는 한 더미 위에 있을 때만 이동할 수 있습니다.
더 작은 디스크 위에 디스크를 놓을 수 없습니다.
입력 − 3
출력 − A에서 B까지
A ~ B
B 설명 − 재귀 함수를 사용하여 하노이 탑을 해결합니다.
예제
#include<stdio.h> void TOH(int n,char x,char y,char z) { if(n>0) { TOH(n-1,x,z,y); printf("</p><p>%c to %c",x,y); TOH(n-1,z,y,x); } } int main() { int n=3; TOH(n,'A','B','C'); }
으으으으
위 내용은 C언어로 작성된 하노이탑 프로그램의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!