我想製作一個Yahtzee遊戲,我需要隨機化數字1-6以便使其回顯特定的骰子面。隨機化批處理變量
:gameplay
cls
pause
SET /A dice=%RANDOM% %%6+1
if %dice%==1
echo %dice1a%
echo %dice1b%
echo %dice1c%
echo %dice1d%
echo %dice1e%
echo %dice1g%
pause
這是我開發的代碼。它還沒有完成,這只是一個隨機數的測試。每次我運行它時,都會暫停,然後退出程序。如果你們知道問題出在哪裏,你能告訴我,而且我想知道是否可以存儲多行變量,所以我不必不斷地回顯多個變量。如果你們知道任何事情,請告訴我。由於
編輯: 我想你建議並做:
:gameplay
cls
pause
SET /A dice=%RANDOM% %%6+1
if %dice%=1
echo Hi
pause
echo %dice1a%
echo %dice1b%
echo %dice1c%
echo %dice1d%
echo %dice1e%
echo %dice1g%
pause
所以我覺得變量設置不正確。它不通過遵循第二個暫停。我幾乎沒有注意到這一次它在退出之前說無效的命令語法。 (還是)感謝你的建議。
您確定只有第一次暫停嗎?看起來像是通過了。在那裏放些更多的回聲。 – yacc
用'if%dice%== 1'再試一次 – yacc
它仍然說在程序退出前一秒鐘有一個無效的語法。 – IronFlame