汉诺塔问题

#include <iostream>
using namespace std;
static i=0;
int main()
{
	
	void hanota(int , char , char , char );
	cout<<"您要移动多少盘子?";
    int n;
	cin>>n;
	hanota(n, 'A', 'B', 'C');
	cout<<"一共移动了"<<i<<"次!!"<<endl;
	return 0;
}
void hanota(int n, char a, char b, char c)
{
	void move(char , char );
	if (n==1)  move(a,c);
	else
	{
		hanota(n-1, a, c, b);
		move(a, c);
		hanota(n-1, b, a, c);
	}
}
void move(char x, char y)
{
	cout<<x<<"--->"<<y<<endl;
	i++;
}

阅读更多
文章标签: include c
个人分类: C++实例讲解
上一篇比赛分配
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭