编程实现汉诺塔问题。
#include<iostream>
using namespace std;
void move(int n,char a,char b)
{
cout<<"将第"<<n<<"个盘子从柱"<<a<<"移动到柱"<<b<<endl;
}
void hanoi(int n,char a,char b,char c)
{
if(n>0)
{
hanoi(n-1,a,c,b);
move(n,a,b);
hanoi(n-1,c,b,a);
}
}
int main()
{
char a='A';
char b='B';
char c='C';
int n;
cout<<"请输入汉诺塔的高度n:";
cin>>n;
hanoi(n,a,b,c);
return 1;
}
仅作留档。