![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-10 14:09 |
共 47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,255 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [趣味游戏]神奇读心术批处理版 |
| 可打印版本 6,857 / 40 |
| 第1楼 namejm | 发表于 2006-12-04 10:22 |
| 荣誉版主 发帖 1,737 积分 5,226 来自 成都 | |
|
[趣味游戏]神奇读心术批处理版 以前9527曾在群里发过吉普赛人祖传的神奇读心术的网址,它能测算出你的内心感应。当时为它的神准所震慑,只觉得自己内心所想全被一股神秘的力量所洞悉。后来转念一想,网络非神物,一定有什么技巧隐藏在里面,一时兴起,稍加推演,找到了原因所在——原来所谓的读心术,只不过如魔术一般,使用的是障眼法而已。
昨天在群里,又旧事重提,于是有了写个批处理版读心术的念头。12.3抽空写了个代码(版本一),张贴如下,各位可以抱着测试的态度先玩几次,玩过之后再想原理,想不通再看代码(版本二由版本一演变而来): 版本一: 版本二: 点这里可以在网上玩flash版的神奇读心术 [ Last edited by namejm on 2006-12-21 at 05:59 PM ] |
|
| 第2楼 redtek | 发表于 2006-12-04 10:53 |
| 金牌会员 发帖 1,147 积分 2,902 | |
|
不仅代码好玩,而且这界面做得真漂亮啊!!!
|
|
| 第3楼 namejm | 发表于 2006-12-04 10:59 |
| 荣誉版主 发帖 1,737 积分 5,226 来自 成都 | |
|
界面排版稍微具备一点美观性,但是距离漂亮还有一段距离,redtek 兄谬赞了。本来还想加点动态色彩的,但是没想好做成什么样子的,暂时搁置起来了。
|
|
| 第4楼 youxi01 | 发表于 2006-12-04 11:03 |
| 高级用户 发帖 247 积分 846 来自 湖南==》广东 | |
|
TO namejm斑竹:
一事不明,为什么要将获得var%%i的值写成一个“函数”,然后call呢? for /l %%i in (0,1,99) do ( set num=%%i call :get_num ) call的使用,不是会使运行效率大大打折吗? 将for语句改一改,测试代码: for /l %%i in (0,1,99) do ( set /a random_=%random%%%32 set var%num%=!str:~%random_%,1! ) 是不是要快很多啊? |
|
| 第5楼 namejm | 发表于 2006-12-04 11:57 |
| 荣誉版主 发帖 1,737 积分 5,226 来自 成都 | |
|
Re youxi01:
像你那样修改是要出错的,因为在 for 语句内部,如果本次循环中,后面的语句要调用前面语句产生的变量,一般是要启用变量延迟的。如果修改成你那样的语句,则 %random_% 的值始终为空,并非上一句所产生的值。如果用感叹号对的形式,就会写成 set var%num%=!str:~!random_!,1! 的格式,程序无法正确识别引用范围,同样会出错。 基于上面的原因,我就 call 了段“函数”来绕过这个问题,暂时还没考虑到效率的问题。如果你有更好的解决办法,不妨发出来看看。 |
|
| 第6楼 tao0610 | 发表于 2006-12-04 12:09 |
| 高级用户 发帖 218 积分 579 | |
|
call会让效率大大打折吗?不太清楚.
谁以后可以做做试验! 既然用了环境变量延迟倒是可以放里面 打错了.... [ Last edited by tao0610 on 2006-12-4 at 12:15 PM ] |
|
| 第7楼 youxi01 | 发表于 2006-12-04 12:47 |
| 高级用户 发帖 247 积分 846 来自 湖南==》广东 | |
|
不好意思,我也看错了,不过以下代码还真的可能快那么一点):(代码同上楼)
|
|
| 第8楼 lxmxn | 发表于 2006-12-04 13:08 |
| 版主 发帖 4,938 积分 11,386 | |
|
一个字,强~ |
|
| 第9楼 electronixtar | 发表于 2006-12-05 01:08 |
| 铂金会员 发帖 2,672 积分 7,493 | |
|
NB
|
|
| 第10楼 weapfe | 发表于 2006-12-05 02:12 |
| 初级用户 发帖 66 积分 144 | |
|
看不懂楼主和youxi01兄的
set /a random_=!random!%%32 中的"%%32"是什么意思,不知能否教一下小弟....学飞中~~~~ |
|
| 第11楼 vkill | 发表于 2006-12-05 04:33 |
| 金牌会员 发帖 1,744 积分 4,103 来自 甘肃.临泽 | |
|
我还是没有发现那个是怎么算出来的
|
|
| 第12楼 namejm | 发表于 2006-12-05 04:39 |
| 荣誉版主 发帖 1,737 积分 5,226 来自 成都 | |
|
呵呵,我们一起来做个算术题:假设一个两位数,个位和十位分别为x和y,那么,按照读心术的规则,就是 x+10y-(x+y),结果为9x。在那张随机表上,只要确保9的倍数后面跟的图形是同一个东西就行了。
|
|
| 第13楼 CHINAWY0007 | 发表于 2006-12-21 08:56 |
| 初级用户 发帖 18 积分 40 来自 重庆市 | |
|
不得不顶.实在太妙了.
|
|
| 第14楼 jmz573515 | 发表于 2006-12-21 09:59 |
| 银牌会员 发帖 464 积分 1,212 | |
|
真是好东西,高手!
|
|
| 第15楼 hxuan999 | 发表于 2006-12-21 11:26 |
| 中级用户 发帖 161 积分 337 | |
|
领会一下
|
|
| 1 2 3 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |