
klsudoku
为什么做KLSudoku
原因很简单,因为自己喜欢玩传统的标准数独,所以借学习CSharp的机会来编写一个标准传统数独的题目生成和解题的游戏软件,并且力求它可以为你增加更多的解题乐趣。
KLSudoku所有源码免费开放,但是请先阅读并且同意代码使用说明。使用源码时请务必在代码和软件的显著位置添加指向本Project的连接地址 http://code.google.com/p/klsudoku/ ,希望更多的数独爱好者可以一起加入改进。
一些链接地址
- 用户手册
- 发布的安装包说明
- 解题思路解说
- 从天空下载站下载KLSudoku
- 从Google下载KLSudoku,你可以从这里下载到最新的预览版。新预览版会有新的功能实现,但是问题可能也会多一些,欢迎试用以提出改进建议。
- 我的数独qq群号码*106249*** 论坛和邮件列表:http://groups.google.com/group/china-sudoku
- 我的邮件地址是 mailto:ttylikl@qq.com
- 我的博客地址 http://www.cnblogs.com/ttylikl/category/176222.html**
KLSudoku现状
已经发布的版本:1.3 (2009.12.15) (已经开始转入C++开发跨平台的版本分支)
版本修订记录
2009.12.15(v1.3 Release)
注:开始用C++重新开发数独游戏,未完特性将在新的开发分支里实现,本次发布版本主要是修复一些小BUG和一些细节的改善。 1. 问题修正: * 修复一个唯一矩形BUG(Issue28) * 修复在Windows7上启动时的一个异常崩溃问题(Issue26) * 修改在Windows7上启动时对界面的细节处理(Issue26) * 修改不能按两次数字键来选择和取消热点数字的问题(Issue26) * 修改鼠标离开游戏区域时未隐藏热点数格的问题(Issue26) * 修改在使用BUG+1解法提示时不合理的颜色标注问题(Issue27)
2009.7.2(v1.2)
- 新增功能:
- 增加BUG+1解题技巧
- 增加游戏历史浏览和排行榜功能
- 增加游戏计时和填数情况统计显示的功能
- 重新设计键盘操作方法(严西建议)
- 增加突显热点数字的功能(严西建议)
- 增加一些数独相关网站链接
- 增加以表格形式复制题目的功能,增强复制解题步骤的功能
- 增加恢复上次运行窗口大小的功能,改进启动体验
- 减少更新检查频度,优化软件更新逻辑
- 改进候选数标记删除的展示效果(默认显示为不存在)
- 增加多种用户可定制的配置选项
- 问题修正:
- 修正一些对数格或者候选数颜色标注的错误
- 修正X-Chain解题技巧在特定情况下会出现遗漏的问题
2009.4.10(v1.1 build 23847)
问题修正:
- 修正未选择默认操作数情况下数组越界崩溃的错误
- 修正在提示模式下数格和候选数背景色显示错误的问题
2009.4.8(v1.1)
问题修正:
- 修正在未联网情况下因为检测新版本失败而退出的问题
2009.3.23(v1.1Preview)
- 修正在未联网情况下因为检测新版本失败而退出的问题
新增功能
- 增加7种唯一矩形排除法Uniquess Rectangle
- 增加XY-Chain解法
- 重新实现了隐式数集法,XY-Wing
- 重新设定题目难度划分
- 增加使用颜色标注提示的数格和候选数的功能
- 增强普通模式(非候选数模式)的操作
- 增加手动添加候选数的功能
- 预置了近5万个17个初始数的数独题
- 调整复制出来的解题步骤信息
- 增加新的用户手册,以说明操作方法以及解题技巧
- 缩减安装包大小
问题修正
- 修正一些解题技巧的实现问题
- 修正一些基础逻辑错误
- 修正撤销错误无法正确完成的问题
- 修正生成题目的问题
- 修正后台线程影响操作的问题
2009.2.21(v1.0)
增加以下逻辑解法
- X-Chain
- Forcing-Chain
- SwordFish
- JellyFish
- 重新实现以下逻辑解法:
- Naked Pair
- Naked Triple
- Naked Quad
- X-Wing
- 可以根据指定难度出题
- 窗口大小可缩放,数格也相应缩放
- 在主程序实现出题器,增加配置文件和题库记录文件
- 增加基本解题技巧网页帮助到安装包里
修改一些操作的小BUG
2009.2.16
安装包和程序可在 .NET Framework 2.0 版下运行
- 支持以下解法
- 显式唯一数法,隐式唯一数法
- 区块排除法(intersection removal)
- 显示数对法(Naked Pair),隐式数对法(Hidden Pair)
- 显式三数集(Naked Triple),四数集法(Naked Quad)
- 隐式三数集(Hidden Triple),四数集法(Hidden Quad)
- X-Wing
- XY-Wing
- XYZ-Wing
- 解题步骤撤销和重复功能
- 解题提示功能
- 可以复制解题步骤
- 题目可以通过粘贴或者文本文件导入,题目格式支持81个长数或者9X9数列表
- 可手动输入游戏
开发和使用环境说明
- 开发环境说明:Visual Studio 2008 with SP1 , Windows XP
- 程序语言: C#
- 安装包需求: .NET框架2.0
其他说明
出于学习的目的,代码里使用了一些不必要的代码来达成目标,如果这对阅读代码时造成了困扰,可以给我写邮件询问。
编写过程中,参考了数独百科sudopedia和sudocue两个网站的不少解题技巧说明: * http://www.sudocue.net/guide.php * http://www.sudopedia.org/wiki/Solving_Technique
其他相关计划
准备将KLSudoku使用QT重新移植一次,争取在Windows,Linux,Symbian,WinCE上发布KLSudoku。 移植的项目将会增加网络功能,且将不再开源(将以共享软件形式发布),但是KLSudoku依然会持续更新,实现新的功能。
界面预览
http://klsudoku.googlecode.com/svn/trunk/csharp/SudokuPanel/Docs/ui_1.PNG
http://klsudoku.googlecode.com/svn/trunk/csharp/SudokuPanel/Docs/ui_2.PNG
更多界面预览图见: http://klsudoku.googlecode.com/svn/trunk/csharp/SudokuPanel/Docs/