Board logo

标题: 猜数字游戏 [打印本页]

作者: tadonis     时间: 2008-5-23 00:53    标题: 猜数字游戏

@echo off
mode con cols=34 lines=25
color f9
title 猜数字 by tadonis
:begin
cls
set/a pp=%random%%%100
set a=1
set/a num=5
set b=100
echo **********************************
echo *                                                        *
echo *     猜数字(1-100)                                *
echo *                                                        *
echo **********************************
:start
echo      你还有%num%次机会
set/p p=输入你所猜的数字(%a%-%b%)
if "%p%"=="" echo 请输入数字&goto start
if %p% gtr %b% goto error
if %p% lss %a% goto error
set/a bb=%b%-%a%
if %p% gtr %pp% set/a b=%p%
if %p% lss %pp% set/a a=%p%
if %p% equ %pp% goto succeed
set/a num-=1
if %num% gtr 0 (goto start) else goto fail
:succeed
set/a c=6-%num%
echo 你共猜了%c%次
if %c% leq 3 echo you are so clever
echo       再来一次??
set /p choice=[Y/N]
if /i "%choice%"=="Y" goto begin
if /i "%choice%"=="N" goto exit
:error
color d0
ping /n 1 127.0.0.1>nul
echo      Are you stupid??
echo      wrong number  !!
ping /n 1 127.0.0.1>nul
color f9
goto :start
:fail
echo 正确答案是%pp%
echo       你太菜了!!!!
echo       再来一次??
set /p choice=[Y/N]?
if /i "%choice%"=="Y" goto begin
if /i "%choice%"=="N" goto exit
:exit
exit

[ Last edited by tadonis on 2008-5-23 at 12:54 AM ]
作者: tadonis     时间: 2008-5-23 00:56
这时我编的小游戏,请各位大虾多多指教
作者: bat-zw     时间: 2008-5-23 01:09
代码需简化,但仍鼓励并加分。
作者: bat-zw     时间: 2008-5-23 01:45    标题: 稍做了下修改:


@echo off&mode con cols=34 lines=10&color f9
title 猜数字 by tadonis
:begin
cls&set/a pp=%random%%%100+1
set a=1&set num=5&set b=100&set n=0&set p=
echo **********************************
echo *                                                        *
echo *     猜数字(1-100)                                *
echo *                                                        *
echo **********************************
:start
set /a n+=1
cls&echo.&echo.&echo 你共有5次机会,还剩%num%次!
set/p p=输入你所猜的数字(%a%-%b%)
if "%p%"=="" goto start
if %p% gtr %b% goto start
if %p% lss %a% goto start
if %p% gtr %pp% set b=%p%
if %p% lss %pp% set a=%p%
set/a num-=1
if %p% equ %pp% goto succeed
if %num% gtr 0 (
  goto start
  ) else (
  cls&echo.&echo.&echo 正确答案是%pp%&echo 你太菜了!!!!&goto again
)
:succeed
cls&echo.&echo.&echo 你共猜了%n%次
if %n% leq 3 echo you are so clever
:again
echo 再来一次??(退出直接回车)
set /p choice=[如继续请输入y/Y]
if /i "%choice%"=="Y" goto begin
[ Last edited by zw19750516 on 2008-5-23 at 01:59 AM ]