如何修正我的石头蜥蜴spock程序的语句?

问题描述 投票:0回答:1

好的,这里是编码的新手,但是在我的JavaScript程序中,我试图为已经流行的RPS游戏(Lizard和Spock)添加2个新条件。但是,在index.js文件中添加这两个新条件时,似乎什么也没有发生。

我曾尝试将数学分别提高到0.20,但这似乎无济于事。我认为问题在于我对5个不同的变量使用了错误的函数(如果,否则,如果)

function run() {
    playerChoice = this.innerText;
    computerGamble();
    compare();
}

function computerGamble() {
    var dice = Math.random();
    if (dice <= 0.33) {
        computerChoice = "Rock";
    } else if (dice > 0.33 && dice <= 0.66) {
        computerChoice = "Paper";
    } else {
        computerChoice = "Scissors";
    } else {
      computerChoice = "Lizard";
    } else {
      computerChoice = "Spock";
}

}

所有变量/条件都应有相等的机会被选择。

javascript html css
1个回答
1
投票

我想我只会使用0-5之间的随机数,而不是使用像这样的简单switch case语句:

function run() {
    playerChoice = this.innerText;
    computerGamble();
    compare();
}

let numberOfChoices = 5;
function computerGamble() {
 var dice = Math.floor(Math.random()*numberOfChoices); //numbers between 0-5
 switch(dice){
  case 0: computerChoice = "Rock";break;
  case 1: computerChoice = "Paper";break;
  case 2: computerChoice = "Scissors";break;
  case 3: computerChoice = "Lizard";break;
  case 4: computerChoice = "Spock";break;
 }
}
© www.soinside.com 2019 - 2024. All rights reserved.