windows bat文件:%random%number作为问题的答案

0 windows random if-statement file batch-file

我正在一个bat文件中制作一个简单的小文本游戏.现在,我达到了一个点,我希望bat文件生成一个随机数(使用%random%); 然后它将弹出2秒(使用echo和timeout).然后你应该在if/p中输入它.如果你输入正确的,它将转到sb3.如果它不是正确的,它将转到gameover.这有可能吗?

cls
echo remember these
set ran=%random%
echo %ran%
timeout 2
cls
set /p sb2=what was the numbers? if you fail the game will quit.
if %sb2%==%ran% goto sb3 
Run Code Online (Sandbox Code Playgroud)

目前,无论你键入什么,都将进入sb3.

Joe*_*oey 5

你有替代方案的代码路径吗?如果您刚刚拥有,if ... goto那么如果条件不满足,它将继续下一个语句.如果您的代码如下所示:

 if %sb2%==%ran% goto sb3
 :sb3
 ...
Run Code Online (Sandbox Code Playgroud)

那么你总会在那里结束并不奇怪.

你需要明确地跳出来:

 if %sb2%==%ran% goto sb3
 goto :eof
 :sb3
 ...
Run Code Online (Sandbox Code Playgroud)