版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据结构课程设计课题:“八皇后”棋盘问题 组员:卜文婷 郭倩 屈雪 耿艳课题时间:7月1号7月5号人员分工 卜文婷(组长):编排内容进行整体布局 屈雪:演讲文稿,进行答辩 耿艳:资料查找 郭倩:ppt的制作及处理 关于编程部分的实现由成员一起完成八皇后规则在一个88国际象棋盘上,有8个皇后,每个皇后占一格;要求皇后间不会出现相互“攻击”的现象,即不能有两个皇后处在同一行、同一列或同一对角线上。 课题意义到了现代,随着计算机技术的飞速发展,这一古老而有趣的数学游戏问题也自然而然的被搬到了计算机上。运用所学计算机知识来试着解决这个问题是个锻炼和提高我自己编程能力和独立解决问题能力的好机会,可以使我
2、们增强信心。构想来源设置为大型游戏中的闯关小游戏。大型游戏,如仙剑情节中会加入小的闯关游戏。仙剑三景天给龙葵找广袖流仙裙。仙剑4里的拼图闯关。依照八皇后原则选择正确的路线通关。或作为益智小游戏初步构想1、建立合适的数据类型表示皇后在棋盘上所处的位置。 2、以8*8规格画出棋盘形式,在上面动态的标注其行走的过程。 3 、当玩家走一步时,将显示玩家所在的位置,并显示是否正确,若出现错误,就清除所有步数重新开始,重复次数为三,若仍不正确,则游戏闯关失败。以下算法是我们初步的一个构想,我们将用递归实现玩家的行走步骤,完善我们的算法。int ok(int i)/*递归判断第i行的落子可行性*/(通过横纵
3、向及斜向判断)int wdown(int i,int j)玩家输入位置int output()/*输出棋盘状态*/clock();/*计算时间*/ void show();玩家若走不出,可选择显示答案算法#include #include #include int cells64;/*存储摆放方案,一维数组视为二维棋盘*/int num=0;/*记录尝试次数*/int output()/*输出棋盘状态*/ static int count=0;/*静态变量计录本次输出的编号*/ int t=0,m,n;/*辅助计算黑白格的选取*/ count+; printf(方案%d:rn,count);
4、for(m=0;m8;m+) for(n=0;n8;n+) t+; if(cellsn+m*8=0)/*没有皇后*/ t%2?printf():printf();/*根据奇偶与否决定输出格子黑白*/ else/*有皇后*/ printf(); t+;/*偏移,使黑白格交错*/ printf(rn); if(count=30|count=60)system(pause); return 0; int ok(int i)/*递归判断第i行的落子可行性*/ int k,j,t1,t2,r;/*临时变量,作用随机*/ for(k=0;k8;k+)/*从行首开始向后轮流判断*/ r=0;num+;/*r
5、存储是否存在冲突,非0则为冲突*/ for(j=0;j8;j+)/*清空该行可能的棋子,避免由子过程返回后产生的冲突。*/ cellsj+i*8=0; for(j=0;j=0)/*斜线上仍有格子*/ if(cellst1)r=1;break;/*斜向存在冲突*/ t1-=9;/*继续移动*/ t2-=7;/*同理*/ while(t2%8!=0&t2=0) if(cellst2)r=1;break; t2-=7; if(!r)/*没有发生冲突*/ cellsk+i*8=1;/*确认落子*/ if(i7)/*没有落完八个皇后*/ ok(i+1);/*继续在下一行寻找方案*/ else/*落子成功
6、结束*/ output();/*输出棋盘状况*/ return 0;int main()/*应用程序入口,不解释*/ int i;/*临时变量,用于初始化棋盘*/ double a,b,c;/*计时用*/ printf(Q); printf(“答案rn); for(i=0;i64;i+)/*棋盘初始化*/ cellsi=0; a=clock();/*开始时间*/ ok(0);/*运算*/ b=clock();/*结束时间*/ printf(rn回答完毕!rn); c=(double)(b-a)/CLOCKS_PER_SEC;/*计算时间间隔*/ return 0; 预期结果 在游戏界面中作为闯关的一项,当玩 家在进行下一游戏之前,将进入此项环节,即必须在规定时间内完成八皇后的破解(共走八步,只要符合
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 机场职业道德培训课件
- 安全培训记录台账课件
- 智慧养老技术在护理中的应用
- 高热患者的皮肤护理
- 护理核心制度制度规范
- 消防安全宣传全流程
- 肺炎患者的康复评估
- 安全事故原因剖析讲解
- 青旅行业职业发展路径
- 肾移植患者的护理要点
- 房地产机电设计注意事项汇编
- 铜及铜合金熔铸安全设计与生产规范-编制说明
- 公安联考试题真题及答案
- 《现代物流设施与规划》课件(共十四章)
- DBJ53T-50-2013 云南省建筑工程结构实体检测技术规程
- 2025年党建知识应知应会测试题库(附答案)
- 网络安全技术及应用 第5版 贾铁军 习题集 第1-12章
- 2025年哈尔滨铁道职业技术学院单招笔试职业能力测验试题库含答案解析(5套共100道单选合辑)
- 2025院感爆发考试试题及答案
- 供应链管理-金属结构制造行业的全球化与协同创新-洞察阐释
- 纺织工业“十五五”发展规划
评论
0/150
提交评论