📄 tower.cpp
字号:
#include <iostream.h>
void Towers(int n, char fromPeg, char auxPeg, char toPeg)
// 把n个盘子从fromPeg借助auxPeg移至toPeg
{
if(n==1) //递归出口
{
cout << "Move Disk 1 from Peg " << fromPeg
<< " to Peg " << toPeg << endl;
return;
}
// 把n-1个盘子从fromPeg借助toPeg移至auxPeg
Towers(n-1, fromPeg, toPeg, auxPeg);
//把盘子n由fromPeg直接移至toPeg
cout << "Move Disk " << n << " from Peg "
<< fromPeg << " to Peg " << toPeg << endl;
//把n-1个盘子再从auxPeg借助fromPeg移至toPeg
Towers(n-1, auxPeg, fromPeg, toPeg);
}
void main(void)
{
int n;
cout << "输入盘子个数:";
cin >> n;
Towers(n,'A','B','C');
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -