8. What if Choice1 is scissors?


#1

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 "scissors wins";
}
}
}
};
console.log(compare(userChoice, computerChoice));

I got a syntax error. Not sure what I did here. Thanks in advance.


#2

@devcoder94568,
An ELSE-IF code block looks like (take notice of the curly-brackets-{ } )

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

#3

@leonhard.wettengmx.n I changed my code and I'm still getting the same syntax error.

else if(choice1 === "scissors") {
if(choice2 === "rock") {
return "rock wins";
}
else{
return "scissors wins";
}
}
console.log(compare(userChoice, computerChoice));


#4

@devcoder94568,

Please read
http://www.codecademy.com/forum_questions/559dcb4be39efe550f00006b
and concentrate on:

  • the creation of the compare function
  • the truth-table
  • the build of the IF ELSE-IF statement structure as part of the compare FUNCTION-BODY
  • the execution of the compare function (keeping in mind that the return statement is used )

#5

Hi, Please change, choice1 for userChoice and choice2 for computerChoice

from var compare = function(choice1, choice2) {

until the end of your entire if/ else if / else statement.

When you call the code compare, it must compare the input of the userChoice with the random computerChoice.


#6

@momba- Are you referring to printing it out? e.g.,

console.log(compare(choice1, choice2));


#8

Here is the completed code. I hope this helps!

---Starts after this---

/*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 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 win";
}
else (choise2 === "paper")
{
return "paper wins"
}
}
else if (choice1 === "paper")
{
if (choice2 === "rock")
{
return "paper wins"
}
else (choice2 === "scissors")
{
return "scissors wins"
}
}

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

}
}
compare(userChoice,computerChoice)