Skip to content
Open
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 36 additions & 4 deletions 01week/rockPaperScissors.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,22 @@
'use strict';

/**WHITEBOARDING
If/Else Statements
Player 1 & 2 start game by shaking fist 3 times and revealing selection on the 4th.
If Player 1 rock vs rock = ties
-- Player 1 rock vs paper = loses
-- Player 1 rock vs scissors = wins
-- Player 1 paper vs paper = ties
-- Player 1 paper vs scissors = loses
-- Player 1 paper vs rock = wins
etc etc. List out all combos of results.
...SO...
Test if Player 1 Wins, Test if Player 2 Wins, Test if it's a tie.
If (rock) && (rock > scissors)....
Try Switch statement since you have many options to run through.
How can you test hand 1 and hand 2 simultaneously? As if in real life?
**/

const assert = require('assert');
const readline = require('readline');
const rl = readline.createInterface({
Expand All @@ -8,11 +25,26 @@ const rl = readline.createInterface({
});


function rockPaperScissors(hand1, hand2) {

// Write code here

// MY CODE //
function rockPaperScissors(hand1, hand2){
if (hand1 === 'rock' && hand2 === 'rock') {
console.log("It's a tie!");
} else if (hand1 === 'paper' && hand2 === 'paper') {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you refactor/consolidate your 3 if statements that result in "It's a tie!"?

Hint: If hand1 and hand2 result in the same value, it's an automatic tie regardless of the string value in each hand.

console.log("It's a tie!");
} else if (hand1 === 'scissors' && hand2 === 'scissors') {
console.log("It's a tie!");
} else if (hand1 === 'rock' && hand2 === 'rock') {
console.log("It's a tie!");

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This function should make a return statement instead of a console.log(). Console.log is a great way to PRINT comments on your terminal but I does not return a value.

} else if (hand1 === 'rock' && hand2 === 'scissors') {
console.log("Player 1 wins!");
} else if (hand1 === 'rock' && hand2 === 'paper') {
console.log("Player 2 wins!");
} else if (hand1 === 'paper' && hand2 === 'scissors'){
console.log("Player 2 wins!");
}
}
console.log(rockPaperScissors('rock', 'scissors'));


function getPrompt() {
rl.question('hand1: ', (answer1) => {
Expand Down