2020软件工程作业03

软件工程https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1
作业要求 https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1/homework/10494
作业目标 实现一个数独命令行程序
作业正文 见下文
其他参考文献 百度

 

 

 

 

 

 

 

 

Github 项目地址:https://github.com/maoliu1/shudu1

PSP 表格:

PSP2.1Personal Software Process Stages预估耗时(分钟)实际耗时(分钟)
Planning 计划 20 45
Estimate 估计这个任务需要多少时间 30 60
Development 开发 40 30
Analysis 需求分析 (包括学习新技术) 60 70
Design Spec 生成设计文档 20 20
Design Review 设计复审 20 30
Coding Standard 代码规范 (为目前的开发制定合适的规范) 30 30
Design 具体设计 60 60
Coding 具体编码 120 180
Code Review 代码复审 120 160
Test 测试(自我测试,修改代码,提交修改) 100 125
Reporting 报告 30 45
Test Repor 测试报告 25 30
Size Measurement 计算工作量 20 20
Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 30 30
合计   725 935

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1.解题思路

首先我们要了解什么是数独。数独盘面是个九宫,每一宫又分为九个小格。在这八十一格中给出一定的已知数字和解题条件,利用逻辑和推理,在其他的空格上填入1-9的数字。使1-9每个数字在每一行、每一列和每一宫中都只出现一次,所以又称“九宫格”。我们可以先从三宫格开始,然后进阶到九宫格。其中三宫格,五宫格,七宫格可以不用考虑宫,但四宫格,六宫格,八宫格,九宫格需要考虑宫,宫中的每一个数字不能重复。每两个盘一间空格分开,每两个小格之间空格分开。代填入格子用零代替。输出有两种可能,有答案,和无解。

 

性能分析

 

单元测试

测试用例

关键代码展示

 

心路历程

刚开始接到这个任务内心还是很难受的,对于我们这个小白,一下子真的感觉触到知识盲区了。数独游戏一直也是我在玩的一款游戏,没想到有一天要我自己来写个数独程序,数独游戏以后可能不会再爱了。

这次任务的困难之处仍然在代码上,刚开始上网搜看了许多人的代码,从中知道回溯算法,奇怪的知识又增加了。技术小白的我,只能看着别人的代码,自己跟着编码学习,有时候这些代码连看懂都很吃力。这次作业,虽然算完成了,但离真正的标准还是不够,在之后还是得就这个任务多多完善,直到标准。

 

posted @ 2020-04-02 12:11  猫六。  阅读(172)  评论(0编辑  收藏  举报