我必須創建一個擲骰子游戲,如果它落在 2、3、6、12 上,游戲應該停止并告訴我我的兩個骰子的總和落在哪個數字上,以及有多少“滾動”或嘗試它帶我去那里。如果我洗掉 while 回圈中的條件并只留下一個條件,例如:while(dice != 2); 該程式將運行,但顯然只有在它落在 2 時才會匹配。請幫助我!
function play() {
var dice = -1;
var rolls = 1;
var numb1 = 2;
var numb2 = 3;
var numb3 = 6;
var numb4 = 12;
while (dice != numb1 || dice != numb2 || dice != numb3 || dice != numb4) {
dice = Math.floor(Math.random() * 11) 2;
rolls ;
}
document.getElementById('results').innerHTML = 'Your dice landed on: ' dice;
document.getElementById('rolls').innerHTML = 'Rolls: ' rolls;
}
uj5u.com熱心網友回復:
將您的更改||為&&while
function play() {
var dice = -1;
var rolls = 1;
var numb1 = 2;
var numb2 = 3;
var numb3 = 6;
var numb4 = 12;
while (dice != numb1 && dice != numb2 && dice != numb3 && dice != numb4) {
dice = Math.floor(Math.random() * 11) 2;
rolls ;
}
document.getElementById('results').innerHTML = 'Your dice landed on: ' dice;
document.getElementById('rolls').innerHTML = 'Rolls: ' rolls;
}
play()
<div id="results"></div>
<div id="rolls"></div>
您可以通過使用來改善 while 條件includes
function play() {
var dice = -1;
var rolls = 1;
var numb1 = 2;
var numb2 = 3;
var numb3 = 6;
var numb4 = 12;
while (![numb1, numb2, numb3, numb4].includes(dice)) {
dice = Math.floor(Math.random() * 11) 2;
rolls ;
}
document.getElementById('results').innerHTML = 'Your dice landed on: ' dice;
document.getElementById('rolls').innerHTML = 'Rolls: ' rolls;
}
play()
<div id="results"></div>
<div id="rolls"></div>
uj5u.com熱心網友回復:
您的代碼不起作用,因為dice需要同時成為這些數字中的每一個才能起作用,這是不可能的。
嘗試這樣做:
while (![2, 3, 6, 12].includes(dice)) {
另外,你的隨機函式不能得到1,也許試試:
Math.floor(Math.random() * 12) 1
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/497714.html
標籤:javascript html
上一篇:C#VisualStudio2022中的求和計算錯誤
下一篇:JS更改具有特定id和類名的元素
