/*
* 程序的版权和版本声明部分
* Copyright (c)2012, 烟台大学计算机学院
* All rightsreserved.
* 文件名称:汉诺塔.cpp
* 作 者:李巧丽
* 完成日期:2012年11月24日
* 版 本 号: v1.0
* 输入描述:略
* 问题描述:略
* 程序输出:盘子移动的次数
* 问题分析:略
*/
#include<iostream>
using namespace std;
long move(int n,char A,char B,char C);
int main()
{
long count;
count=move(4,'A','B','C');
cout<<4<<"个盘子移动次数"<<count<<"次"<<endl;
return 0;
}
long move(int n,char A,char B,char C)
{
long i,j;
if(n==1){
return 1;
}
else{
i=move(n-1,A,C,B);
j=move(n-1,B,A,C);
return i+j+1;
}
}
运行结果: