#include <iostream>
using namespace std;
int move(int n, char a, char b, char c) {
if (n == 0) {
return 0;
}
move(n - 1, a, c, b);//第一步 将 n-1個盤子從a移到b c是工具柱
cout << a << "-->" << c << '\n';//将a柱子下最大的盤子移動到c柱
move(n - 1, b, a, c);//将b柱 n-1 個盤子移動到 c a是工具
}
int main() {
int n=0;
cout << "請輸入漢諾塔盤子的個數:";
cin >> n;
char a, b, c;
a = 'A';
b = 'B';
c = 'C';
move(n, a, b, c);//a為起始,b為工具,c為目标,移動n個圓盤
return 0;
}
#include <iostream>
using namespace std;
int move(int n, char a, char b, char c) {
if (n == 0) {
return 0;
}
move(n - 1, a, c, b);//第一步 将 n-1個盤子從a移到b c是工具柱
cout << a << "-->" << c << '\n';//将a柱子下最大的盤子移動到c柱
move(n - 1, b, a, c);//将b柱 n-1 個盤子移動到 c a是工具
}
int main() {
int n=0;
cout << "請輸入漢諾塔盤子的個數:";
cin >> n;
char a, b, c;
a = 'A';
b = 'B';
c = 'C';
move(n, a, b, c);//a為起始,b為工具,c為目标,移動n個圓盤
return 0;
}