#include <iostream>
using namespace std;
void Hanoi(int n, char from, char via, char to) {
//재귀함수는 반드시 끝나느 조건이 있어야 한다
if (n == 1) {
cout<< from << "->" << to << endl;
}
else {
Hanoi(n - 1, from, to, via);
cout << from << "->" << to << endl;
Hanoi(n - 1, via, from, to);
}
}
int main(){
Hanoi(4, 'A', 'B', 'C');
}
'C++ > Foundation' 카테고리의 다른 글
기초 문제 01 ~ 15 (0) | 2024.03.03 |
---|---|
014. 정수를 입력받아 재귀함수를 사용하여 팩토리얼을 계산하시오 (0) | 2021.04.14 |
013. 9번 문제의 5층 피라미드 그리는 프로그램을 이용하여 n 층의 피라미드를 그리는 함수를 작성하여 3, 5, 7층의 피라미드를 그리시오 (0) | 2021.04.14 |
012.두개의 숫자 중 더 큰 숫자를 반환하는 Larger() 함수를 이용하여 세개의 숫자 중 가장 큰 수를 반환하는 프로그램을 작성하시오 (0) | 2021.04.14 |
011. 10개의 숫자를 랜덤으로 만들어서 배열에 저장하고 크기 순서대로 출력하시오 (0) | 2021.04.14 |