#汉诺塔//河内塔(Tower of Hanoi)
#include<#iostream>
using namespace std;
static int index = 0;
void hanuota(int n, char a, char b, char c) {
if (n == 1) {
printf(“将%d编号的%c直接移动到%c\n”, n, a, c);
}
else {
hanuota(n - 1, a, c, b);
printf(“将%d编号的%c直接移动到%c\n”, n, a, c);
hanuota(n - 1, b, a, c);
}
index++;
}
int main()
{
char a = ‘A’, b = ‘B’, c = ‘C’;//表示A、B、C三根柱子
int n;
printf(“请输入A柱子上盘子的个数:”);
cin >> n;//最开始盘子都在A柱子上,n表示由用户自己输入A柱子上盘子的个数
hanuota(n, a, b, c);
printf("%d", index);//输出盘子总共移动的次数
return 0;
}