中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-05 23:21
48,039 主题排行 / 350,124 发帖 / 今日 2 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » [原创]根据返回正确数字位数与个数猜数字的游戏
可打印版本  2,483 / 16
第1楼 qzwqzw 发表于 2007-07-30 07:48
银牌会员 发帖 636 积分 2,343
[原创]根据返回正确数字位数与个数猜数字的游戏
简单介绍以下这个游戏

有四位十进制数字,可猜8次
每次返回aAbB
A表示数字正确并且位置正确
B表示数字正确但位置不正确

如:假设要猜的数字是1234
如果游戏者猜0134即返回2A1B(3、4为A,1为B)
----------------------------------------------------------------------

关于这段代码
因为只是初步实现
所以免不了有些粗陋
现在感觉在JudgeNum上走了弯路
等有时间再改进吧

反向猜解才真正考验程序算法
各位有什么好注意
不妨提出来议一议



[ Last edited by qzwqzw on 2007-9-25 at 11:19 AM ]
第2楼 ccwan 发表于 2007-07-30 10:20
金牌会员 发帖 1,160 积分 2,725 来自 河北廊坊
曲高和寡。望尘莫及。
第3楼 hackerflysky 发表于 2007-07-31 02:39
初级用户 发帖 20 积分 50 来自 湖南常宁
高手
第4楼 qzwqzw 发表于 2007-07-31 08:08
银牌会员 发帖 636 积分 2,343
看来没有人提供意见
自己贴一个反向猜解的demo吧

对Judge做了修改
前提是比较的目标数各位互不重复
这个可以在非Demo中限定

Guess的算法比较弱
无法从速度还是猜解次数上
大概需要5到8次
在第2至4次可能会遇到猜解很慢的情形
因为那是在逐一判定

如果每次都进行逐一判定
那么猜解次数会有效减少
但是猜解时间会大幅提高
所以现有的算法是综合考虑以后得出来的



[ Last edited by qzwqzw on 2007-8-1 at 10:19 AM ]
第5楼 Noname 发表于 2007-07-31 18:04
新手上路 发帖 9 积分 18
好游戏。。。。。
第6楼 tao0610 发表于 2007-07-31 18:52
高级用户 发帖 218 积分 579
很早以前写得猜数字.玩法差不多.
当时有写的点乱.也懒得改了.

第7楼 qzwqzw 发表于 2007-08-01 10:20
银牌会员 发帖 636 积分 2,343
现在发布一个互动猜解版

第8楼 qzwqzw 发表于 2007-08-01 18:46
银牌会员 发帖 636 积分 2,343
tao0610
最好允许用户输入重复的数字
虽然目标数总是不重复的
但使用带有重复位的测试数
可能会方便确定目标数
第9楼 tao0610 发表于 2007-08-01 23:56
高级用户 发帖 218 积分 579
把判断重复输入那段去了就行.
其实10次之内.判断目标数.不是什么难事.
第10楼 qzwqzw 发表于 2007-08-02 18:24
银牌会员 发帖 636 积分 2,343
现发布一个功能完整的Release 1版

第11楼 qzwqzw 发表于 2007-08-02 18:25
银牌会员 发帖 636 积分 2,343
tao0610
如果允许重复数字
你的:next也需要修改一下
否则可能会重复累加 B 值
第12楼 dosmania 发表于 2007-09-25 14:09
初级用户 发帖 54 积分 172
to qzwqzw:

呵呵``7月30号,大概也是我研究这个游戏的时候,没想到那时候你也在研究这个~
测试了一下你的 release 1版
四种模式都存在问题,具体看我的抓图:









[ Last edited by dosmania on 2007-9-25 at 02:11 PM ]
第13楼 qzwqzw 发表于 2007-09-25 14:45
银牌会员 发帖 636 积分 2,343
cmd的输出还搞什么截图
直接复制粘贴文字就可以了嘛 :)

你的错误我这里调试时无法复现
可能是运行环境的差异造成的影响
听闻你对此颇有研究
就请你代为跟踪调试一下代码
确定一下问题点
以利于我们共同解决问题
谢谢!

[ Last edited by qzwqzw on 2007-9-26 at 10:52 PM ]
第14楼 dosmania 发表于 2007-09-26 14:13
初级用户 发帖 54 积分 172
你有解释机会,可惜的是我没有道歉机会
我已经因此失去了成为本论坛内部群的机会
----------------------------------------------------------
话说清楚些误会就大可以避免,是一场误会...
你要知道我测试你那个代码也花了有10分钟...
得到的是别人的”不理解“,是人都会发火...
------------------------------------------------------------
关于那游戏的代码有兴趣就再浏览一次我那贴子...------------------------------------------------------------
最后,我道歉...

[ Last edited by dosmania on 2007-9-26 at 08:56 PM ]
第15楼 dosmania 发表于 2007-09-26 21:28
初级用户 发帖 54 积分 172
你有解释机会,可惜的是我没有道歉机会
我已经因此失去了成为本论坛内部群的机会
----------------------------------------------------------
话说清楚些误会就大可以避免,是一场误会...
你要知道我测试你那个代码也花了有10分钟...
得到的是别人的”不理解“,是人都会发火...
------------------------------------------------------------
关于那游戏的代码有兴趣就再浏览一次我那贴子...------------------------------------------------------------
最后,我道歉...
1 2  下一页
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023