⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 汉诺塔.cpp

📁 算法思路:   1.如果只有一个金片
💻 CPP
字号:
#include<iostream>
using namespace std;

int Counter;  // 计数器变量

//递归解汉诺塔问题
void Hanoi(char From, char To, char Auxiliary, int N)
{
    if ( N == 1 )
	{
		Counter++; 
		cout << "Step " << Counter <<" :";
		cout << " Move disk 1 from peg-" << From << " to peg-" << To <<endl;
	}
	else
	{
		Hanoi( From, Auxiliary, To, N - 1);
		Counter++;
        cout << "Step " << Counter <<" :";
		cout << " Move disk " << N << " from peg-" << From << " to peg-" << To <<endl;
		Hanoi( Auxiliary, To, From, N - 1 );
	}
}

int main()
{
	int   Number;
	char  Source;
	char  Destination;
	char  Auxiliary;

	Counter = 0;
	cout << "The tower of Hanoi program." << endl;
	cout << "Please enter the number of disks : ";
	cin >> Number;
	cout << "The Source peg :";
	cin >> Source;
	cout << "The Auxiliary :";
    cin >> Auxiliary;
	cout << "The Destination :";
	cin >> Destination;
	cout << endl;

	Hanoi(Source, Destination, Auxiliary, Number);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -