8.what if choice! is scissors


#1

Hi guys,

this is my code for the rock,paper ans scissors game. Please help!

var userChoice = prompt("Do you choose rock, paper or scissors?");
var computerChoice = Math.random();
if (computerChoice < 0.34) {
	computerChoice = "rock";
} else if(computerChoice <= 0.67) {
	computerChoice = "paper";
} else {
	computerChoice = "scissors";
} console.log("Computer: " + computerChoice);

var compare = function(choice1, choice2){
    if(choice1 === choice2) {
        return "The result is a tie!";
    }
    else if(choice1 === "rock"){
        if(choice2 === "scissors"){
            return "rock wins";
        }else{
            return "paper wins";
        }
    }    
   else if(choice1 === "paper"){
        if(choice2 === "rock"){
            return "paper wins";
        }else{
            return "scissors wins";
        }
    }    
    else if(choice1 === "scissors"){
        if(choice2 === "rock"){
            return "rock wins";
        }else{
            return "paper wins";
        }
    }    
}
compare (userChoice,computerChoice)

#2

Hi again,

I'm getting this error " Oops, try again. Your code returned 'paper wins' instead of 'undefined' when the inputs are scissors and paper".

Thank you!


#3

Well for the inputs of scissors vs paper you end up here:

else if(choice1 === "scissors"){
    if(choice2 === "rock"){
        return "rock wins";
    }else{
        return "paper wins";
    }
}

a case for scissors where it is impossible to win if you've chosen scissors :wink:


#4

Thank you Moderator! @ haxor789