下载此文档

汉诺塔程序设计报告(共12页).doc


文档分类:IT计算机 | 页数:约12页 举报非法文档有奖
1/12
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/12 下载此文档
文档列表 文档介绍
精选优质文档-----倾情为你奉上
精选优质文档-----倾情为你奉上
专心---专注---专业
专心---专注---专业
精选优质文档-----倾情为你奉上
专心---专注---专业
数据结构
档-----倾情为你奉上
专心---专注---专业
1、CTower类
1)数据成员:
protected:
friend class CHanNuoTaView;
friend class CHanNuoTaDoc;
int status; //塔上盘的数量
int x; //塔的坐标
int y;
int z[10]; //塔上每个盘的序号
将CHanNuoTaView类和CHanNuoTaDoc类声明为友元类,便于在这两个类中直接对CTower类数据成员进行操作。
2)成元函数
public :
CTower(); //构造函数
~CTower(); //析构函数
void setzb(int a,int b); //设置坐标
int gethzb(); //获得横坐标
int getczb(); //获得纵坐标
void setstatus(); //设置状态
int getstatus(); //获得状态
void gbstatus(); //改变状态
void setpansz(int x); //设置盘子
精选优质文档-----倾情为你奉上
精选优质文档-----倾情为你奉上
专心---专注---专业
专心---专注---专业
精选优质文档-----倾情为你奉上
专心---专注---专业
int getpansz(); //获得盘子
本程序中在其友元类中直接操作数据,故上述成员函数大多未使用。
2、CPlate类
1)数据成元
protected:
friend class CHanNuoTaView;
friend class CHanNuoTaDoc;
int x,y; //盘的坐标
int number; //盘的编号
int size; //盘的大小
COLORREF color; //盘的颜色
2)成元函数
protedted:
CPlate(); //构造函数
~CPlate(); //析构函数
public:
void setpsz(int x); //设置盘子的大小
int getpsz(); //获得盘子的大小
由于本程序较小,采用友元类方式直接操作该类数据,故有些成元函数没有定义。
3、CHanNuoTaDoc类
1)数据成员
精选优质文档-----倾情为你奉上
精选优质文档-----倾情为你奉上
专心---专注---专业
专心---专注---专业
精选优质文档-----倾情为你奉上
专心---专注---专业
protected:
friend class CHanNuoTaView; //将CHanNuoTaView类声明//为友元类,便于在CHanNuoTaView类中直接对CHanNuoTaDoc中的数据进行操作
int platenumber; //盘的数目
CTower tower[3]; //定义塔,
CPlate plate[10]; //最多10个盘子
int flag; //是否是第一次移动盘子
CRect rect[3]; //定义三个塔上方的区域,手工搬移时用
int x_from,y_from,x_to,y_to; //动画移动起止坐标
int plateNo; //盘子编号
struct movestruct //步骤结构
{
int from;
int to;
};
movestruct mov[1024]; //用于存储每一步骤

汉诺塔程序设计报告(共12页) 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数12
  • 收藏数0 收藏
  • 顶次数0
  • 上传人qiang19840906
  • 文件大小52 KB
  • 时间2022-03-30
最近更新