ImageVerifierCode 换一换
格式:DOC , 页数:31 ,大小:408.07KB ,
资源ID:3064766      下载积分:20 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-3064766.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(java课程设计九宫格数独.doc)为本站会员(hw****26)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

java课程设计九宫格数独.doc

1、计算机与信息工程系数独游戏的设计与实现课程设计第 1 页 共 31 页学号 1208010106 面向对象程序设计 课程设计报告题目: 九空格数独游戏的设计与实现专业: 计算机科学与技术班级: 12 级计科(1)班姓名: 程龙军指导教师:陈磊成绩:计算机与信息工程系2014 年 6 月 6 日2013-2014 学年 第二学期计算机与信息工程系数独游戏的设计与实现课程设计第 2 页 共 31 页目录一、题目描述 .3二、设计分析 .31、 基 本 解 法 .32、软件系统的功能 .43、 对性能的要求 .4三、设计思路 .51、 分析找出问题域中的对象 .52、确定类的属性 .53、确定对象之

2、间的关系 .5四、系统设计 .6五、源代码 .13六、系统设计和软件发布 .241、程序运行情况 .242、软件的发布 .283、分析讨论 .29七、难点及关键技术分析 .30八、心得体会 .30九、参考文献 .31计算机与信息工程系数独游戏的设计与实现课程设计第 3 页 共 31 页一、题目(问题)描述在 99 格的大九宫格中有 9 个 33 格的小九宫格,并提供一定数量的数字。根据这些数字,利用逻辑和推理,在其它的空格上填入 1 到 9 的数字。每个数字在每个小九宫格内只能出现一次,每个数字在每行、每列也只能出现一次。 这种游戏只需要逻辑思维能力,与数字运算无关。虽然玩法简单,但数字排列方

3、式却千变万化,所以不少教育者认为数独是锻炼脑筋的好方法。二、设计分析1、 基 本 解 法 :利 用 1 9 的 数 字 在 每 一 行 、 每 一 列 、 每 一 宫 都 只 能 出 现 一 次 的 规 则 进 行解 题 的 方 法 。 实 际 寻 找 解 的 过 程 为 : 使 用 单 元 排 除 法 的 目 的 就 是 要 在 某 一 单 元 ( 即 行 , 列 或 区 块 ) 中 找 到 能填 入 某 一 数 字 的 唯 一 位 置 , 换 句 话 说 , 就 是 把 单 元 中 其 他 的 空 白 位 置 都 排 除掉 。 那 么 要 如 何 排 除 其 余 的 空 格 呢 ? 当 然

4、 还 是 不 能 忘 了 游 戏 规 则 , 由 于1-9 的 数 字 在 每 一 行 、 每 一 列 、 每 一 个 九 宫 格 都 要 出 现 且 只 能 出 现 一 次 , 所以 : 如 果 某 行 中 已 经 有 了 某 一 数 字 , 则 该 行 中 的 其 他 位 置 不 可 能 再 出 现 这 一数 字 如 果 某 列 中 已 经 有 了 某 一 数 字 , 则 该 列 中 的 其 他 位 置 不 可 能 再 出 现 这 一数 字 如 果 某 区 块 中 已 经 有 了 某 一 数 字 , 则 该 区 块 中 的 其 他 位 置 不 可 能 再 出 现 这 一数 字 。计算机与信

5、息工程系数独游戏的设计与实现课程设计第 4 页 共 31 页图 1-1单 元 格 : 数 独 中 最 小 的 单 元 , 标 准 数 独 中 共 有 81个 ; 行 : 横 向 9个 单元 格 的 集 合 ; 列 : 纵 向 9个 单 元 格 的 集 合 ; 宫 : 粗 黑 线 划 分 的 区 域 ,标 准 数 独 中 为 33的 9个 单 元 格 的 集 合 ; 已 知 数 : 数 独 初 始 盘 面 给 出 的数 字 ; 候 选 数 : 每 个 空 单 元 格 中 可 以 填 入 的 数 字 。2、软件系统的功能可弹出游戏界面,方便用户操作,界面易于用户理解。可以选择游戏开始或重新开局。可

6、以判断正误,能给出正确答案,当输入的内容不符合要求时,弹出对话框,提示输入错误。当结果不正确时,弹出对话框,提示答案错误。答案正确时。弹出对话框,显示答案正确。在九宫格数独游戏界面和弹出的消息提示界面有相关的最小化、最大化、关闭等按钮可以操作。3、 对性能的要求(1) 具有较强的实用性(2) 易于理解和应用(3) 对程序的配置要求不高,能广泛应用计算机与信息工程系数独游戏的设计与实现课程设计第 5 页 共 31 页三、设计思路1、 分析找出问题域中的对象并将对象归类,注意筛选掉不必要的对象或类。对象:属于 ShuDu1 主类的对象成员: MenuBar、Menu、MenuItem、JCombo

7、Box属于 ShuDuAns 类的对象:JTextField属于 String 类的对象:atextij 属于JtextField类的对象:textij、属于JPanel类的对象:apanel 、panel 类:包括上述所有类及父类 Jframe。2、确定类的属性ShuDu1: public String: publicJtextField:private JPanel:privateJframe:public3、确定对象之间的关系(包括依赖、泛化、关联、实现等等)Jframe 与主类 ShuDu1 之间:泛化texts (JtextField)与 atext (String)之间:依赖Str

8、ing 与 ShuDu1 之间:依赖Resizable、Editable、Visible 与 texts 之间:实现i、j 与 textij、atextij之间:关联类设计类名 角色变量(属性)行为ShuDu1 表示一个数独MenuaBar:添加菜单项,setSize():设置尺寸等add():添加文本及组件setMenuBar():设置难易等级菜单计算机与信息工程系数独游戏的设计与实现课程设计第 6 页 共 31 页ShuDuAns 设置答案窗口setSize():设置尺寸等JPanel( ):设置面板布局Public void actionPerformed(ActionEvent e)单

9、击事件处理方法单击实践JOptionPaneshowMessageDialog():弹出提示信息框接口名 属性ActionListener add ActionListener():注册单击事件监听器ItemListener表 1-1四、系统设计(类设计、数据设计、方法设计、算法设计等)类的设计(对象的设计) (类图、对象图)计算机与信息工程系数独游戏的设计与实现课程设计第 7 页 共 31 页游戏界面name正确答案数据操作难易程度菜单选项菜单选项nameStartAnswerResultExit难易程度EasyCommomDifficultynamename正确答案图 1-2计算机与信息工

10、程系数独游戏的设计与实现课程设计第 8 页 共 31 页根据不同层次创建数字选择格子 data(i,j),填入数值数独只有一个正确答案吗YES开始生成九宫格NO数独游戏已设置好解决难题的方法,解出正确答案的数字data(i,j)=0,其余的为空值,新的数独产生了答案唯一吗YES答案不唯一,数独不成立NO计算机与信息工程系数独游戏的设计与实现课程设计第 9 页 共 31 页玩家填入数字j+=m+2弹出对话框,要求重新输入所有表格已填完YESNO是否有非法字符可选择提交,判断正误NOYES是否符合正确答案弹出对话框,提示答案正确弹出对话框,提示答案错误。再接再厉图 1-3计算机与信息工程系数独游戏的设计与实现课程设计第 10 页 共 31 页java 程序中数独的算法设计static int DFS() for(int i=1;i=9;i+) for(int j=1;j=9;j+) if(dataij=0) for(int k=1;k=9;k+) if( rowik=0 rowik=1; coljk=1; sql(i+2)/3(j+2)/3k=1; if( DFS()=1 ) return 1; else dataij=0; rowik=0; coljk=0; sql(i+2)/3(j+2)/3k=0; if(k=9) return 0; return 1;

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。