中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 猜数字游戏[写来自己玩的] 上一主题 | 下一主题
wxcute
中级用户





积分 458
发帖 211
注册 2006-7-26
状态 离线
『楼 主』:  猜数字游戏[写来自己玩的]


@echo off
color 70
:begin
cls
echo 猜数字游戏(你有10次机会)

::生成随机数
set/a n1=%random%%%10
:nn2
set/a n2=%random%%%10
if %n2%==%n1% goto :nn2
:nn3
set/a n3=%random%%%10
if %n3%==%n2% goto :nn3
if %n3%==%n1% goto :nn3
:nn4
set/a n4=%random%%%10
if %n4%==%n3% goto :nn4
if %n4%==%n2% goto :nn4
if %n4%==%n1% goto :nn4
set nn=%n1%%n2%%n3%%n4%
::echo %nn%

::输入
set nt=
:numin
set/p nin=输入:
set m1=%nin:~0,1%
if "%m1%"=="" goto :numin
set m2=%nin:~1,1%
if %m2%==%m1% goto :numin
if "%m2%"=="" goto :numin
set m3=%nin:~2,1%
if %m3%==%m1% goto :numin
if %m3%==%m2% goto :numin
if "%m3%"=="" goto :numin
set m4=%nin:~3,1%
if %m4%==%m1% goto :numin
if %m4%==%m2% goto :numin
if %m4%==%m3% goto :numin
if "%m4%"=="" goto :numin
set m5=%nin:~4,1%
if not "%m5%"=="" goto :numin
set/a nt+=1

::判断AB
set/a a=0
if %n1%==%m1% set/a a+=1
if %n2%==%m2% set/a a+=1
if %n3%==%m3% set/a a+=1
if %n4%==%m4% set/a a+=1
set/a b=0
if %n1%==%m2% set/a b+=1
if %n1%==%m3% set/a b+=1
if %n1%==%m4% set/a b+=1
if %n2%==%m1% set/a b+=1
if %n2%==%m3% set/a b+=1
if %n2%==%m4% set/a b+=1
if %n3%==%m1% set/a b+=1
if %n3%==%m2% set/a b+=1
if %n3%==%m4% set/a b+=1
if %n4%==%m1% set/a b+=1
if %n4%==%m2% set/a b+=1
if %n4%==%m3% set/a b+=1
echo %a%A%b%B %nt%

::次数
if %a% equ 4 (
echo 成功&&goto :end
) else (
if %nt% lss 10 goto :numin
)
echo 失败,答案:%nn%

:end
set/p new=再来一局(y):
if %new%==y goto :begin
echo.[按任意键退出]
pause>nul




┌───────┐
├→学习→实践→┤
└───────┘
2008-3-17 14:52
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
bat-zw
金牌会员

永远的学习者


积分 3105
发帖 1276
注册 2008-3-8
状态 离线
『第 2 楼』:  

请再仔细检查,测试代码有错误!

2008-3-17 18:29
查看资料  发送邮件  发短消息 网志  OICQ (841615149)  编辑帖子  回复  引用回复
bat-zw
金牌会员

永远的学习者


积分 3105
发帖 1276
注册 2008-3-8
状态 离线
『第 3 楼』:  

if %n2%==%n1% goto :nn2,goto后 应该没有":"

2008-3-17 18:30
查看资料  发送邮件  发短消息 网志  OICQ (841615149)  编辑帖子  回复  引用回复
wxcute
中级用户





积分 458
发帖 211
注册 2006-7-26
状态 离线
『第 4 楼』:  

确实是,有些特殊的输入是会意外退出。不过我是写来自己玩的,容错的代码只有一点点。老实点输入四个不同的数字就好了。呵呵。



┌───────┐
├→学习→实践→┤
└───────┘
2008-3-17 19:58
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
qzwqzw
银牌会员

天的白色影子


积分 2342
发帖 635
注册 2004-3-6
状态 离线
『第 5 楼』:  

这是以前曾经写过的一些代码
仅供参考

[原创]根据返回正确数字位数与个数猜数字的游戏
http://www.cn-dos.net/forum/viewthread.php?tid=32554

2008-3-18 13:50
查看资料  发短消息 网志   编辑帖子  回复  引用回复
wxcute
中级用户





积分 458
发帖 211
注册 2006-7-26
状态 离线
『第 6 楼』:  回复qzwqzw

很不错,发帖的时候没有搜索一下了,原来前辈已经写过了。而我的只能算是傻瓜型的。

再仔细研究下。



┌───────┐
├→学习→实践→┤
└───────┘
2008-3-21 20:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lfopt
初级用户





积分 71
发帖 34
注册 2008-3-12
状态 离线
『第 7 楼』:  

真的有好多错误,要在改改呀

2008-3-22 01:09
查看资料  发送邮件  发短消息 网志  OICQ (343253490)  编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: