Skip to content

Instantly share code, notes, and snippets.

@joehinkle
Created August 28, 2013 15:07
Show Gist options
  • Save joehinkle/6367116 to your computer and use it in GitHub Desktop.
Save joehinkle/6367116 to your computer and use it in GitHub Desktop.
// Initializing Variables
var userChoice = prompt("Do you choose rock, paper or scissors?");
var computerChoice = Math.random();
// Validation for user input
//if ( userChoice != "rock" || "paper" || "scissors" ) {
// userChoice = prompt("You did not select rock, paper, or scissors. Please try again.");
//}
// Randomly selecting correct value for computerChoice
if ( computerChoice < 0.34 ) {
computerChoice = "rock";
} else if ( computerChoice <= 0.67 ) {
computerChoice = "paper";
} else {
computerChoice = "scissors";
}
// Function that compares the two values
function compare( choice1, choice2 ) {
if ( choice1 === choice2 ) {
return "The result is a tie!";
}
if ( choice1 === "rock" ) {
if ( choice2 === "scissors" ) {
return "Rock wins!";
}
else {
return "Paper wins!";
}
}
if ( choice1 === "paper" ) {
if ( choice2 === "rock" ) {
return "Paper wins!";
}
else {
return "Scissors win!";
}
}
if ( choice1 === "scissors" ) {
if ( choice2 === "paper" ) {
return "Scissors win!";
}
else {
return "Rock wins!";
}
}
}
document.write("<div>User selects: " + userChoice + "</div>");
document.write("<div>Computer selects: " + computerChoice + "</div>");
document.write("<div>Results are: " + compare(userChoice, computerChoice) + "</div>");
@mteece
Copy link

mteece commented Aug 28, 2013

81% slower http://jsperf.com/rps. My plan was to solve all the permutations, store them, cache them, then compare the choices to the already solved problem.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment