没有合适的资源?快使用搜索试试~ 我知道了~
刘博谦课设报告1
需积分: 0 0 下载量 27 浏览量
2022-08-08
22:12:14
上传
评论
收藏 42KB DOCX 举报
温馨提示
试读
11页
刘博谦课设报告1
资源详情
资源评论
资源推荐
数据结构课程报告
软件工程 1504 刘博谦 U201517070
一、开发目标
使用 Html/CSS/Javascript 编写数独游戏。能按照不同难度级别设置
随机的初始数独,允许用户在空格处填入数字完成数独游戏;在用户
输入数字时,判断冲突,给出错误提示;计时,记录用户完成数独所
用时间。
二、开发计划
使用 jQuery 以及其 timer、blockUI 插件完成数独游戏的设计与编写。
首先进行数独算法的编写,然后编写基本的 html 页面,如果还有时
间的话就使用 CSS 把页面再美化一下。
模块名称
主要文件
预计完工
实际完工
完成情况
数独算法
sudoku.js
12.28
12.30
良好
网页
index.html
12.29
01.01
良好
层叠样式表
style.css
12.30
01.01
良好
三、测试方案
1、测试不同浏览器下功能模块与页面显示情况,并与预期效果比较
并做出改进
2、测试不同难度数独算法执行情况,包括速度、错误率等
四、软件设计(用方框图表示软件结构,用流程图或伪代码表示算法)
软件结构
下面给出乱序排列、相关 20 格判定与回溯解数独伪代码。
shuffle(v)
{
i←the length of v
for (i←theLengthOfV;v>0;v←v-1)
j←小于 i 的数字
swap v[i] and v[j]
end
return
}
check20Grid(ss,i,j)
{
//辅助变量存储
let row = {},col = {},subSudo = {}
网页项目 Sudoku——回溯算法实现数独游戏
层叠样式表
文件:style.css
功能:实现网页的样式设
置
Javascript 文件
文件:sudoku.js
功能:实现核心数独算法
与主要函数
(插件 js 文件详见项目)
网页
文件:index.html
功能:实现网页的样式设
置并控制网页流程
for (k←0; k < 9; k←k+1)
{
cur1←ss[i][j],cur2←ss[k][j]
if (ss[i][j]已经在第 i 行出现)
return 1;
else
storage cur1 in row
if (ss[k][j]已经在第 j 列出现)
return 2;
else
storage cur2 in col
if (subSudo[key]已经在小九宫格出现)
return 3
else
storage key in subSudo
}
return 0;//正常
}
fill()
{
for (let i ← 0; i < 9; i++)
{
for (let j ← 0; j < 9;j++) {
if (当前位置为待定元素的首次处理或回溯到当前位置)
{
搜索向下一个合法值迈进
while (k < 10) {
填值
if (相关二十格判定判定合法)
{
存储回溯点,并步进
break;
}
k++;
}
剩余10页未读,继续阅读
南小鹏
- 粉丝: 32
- 资源: 289
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0