Giter VIP home page Giter VIP logo

rockpaperscissors's Introduction

Introduction

We're going to make a simple implementation of grade-school classic "rock paper scissors". If you don't know what that is check the Wikipedia article or this ridiculous step-by-step. For the moment we're just going to play the game from the browser console, but we will revisit it and add a front end later so don't forget to keep the code on GitHub! You might notice some 'view in browser' links in the student solutions - this is coming in a later lesson. When you get there don't forget to come back and add your link!

Assignment

1. Start a new Git repo for your project. 2. Create a blank HTML document with a script tag. This game is going to be played completely from the console, so don't worry about putting anything else in there. 3. Your game is going to play against the computer, so begin with a function called `computerPlay` that will randomly return either 'Rock', 'Paper' or 'Scissors'. We'll use this function in the game to make the computer's play. 4. Write a function that plays a single round of Rock Paper Scissors. The function should take two parameters - the `playerSelection` and `computerSelection` - and then return a string that declares the winner of the round like so: `"You Lose! Paper beats Rock"` 1. Make your function case insensitive (so users can input `rock`, `ROCK`, `RocK` or any other variation)
  1. Important note: you want to return the results of this function call, not console.log() them. To test this function console.log the results:

    function playRound(playerSelection, computerSelection) {
    	// your code here!
    }
    
    const playerSelection = 'rock'
    const computerSelection = computerPlay()
    console.log(playRound(playerSelection, computerSelection))
  2. Write a NEW function called game(). Use the previous function inside of this one to play a 5 round game that keeps score and reports a winner or loser at the end.

    1. You have not officially learned how to "loop" over code to repeat function calls... if you already know about loops from somewhere else (or if you feel like doing some more learning) feel free to use them. If not, don't worry! Just call your playRound function 5 times in a row. Loops are covered in the next lesson.
    2. At this point you should be using console.log() to display the results of each round and the winner at the end.
    3. Use prompt() to get input from the user. Read the docs here if you need to.
    4. Feel free to re-work your previous functions if you need to. Specifically, you might want to change the return value to something more useful.
    5. Feel free to create more "helper" functions if you think it would be useful.

Student Solutions

Submit a solution with a pull request to this file on the Javascript Curriculum GitHub repository. See the section on Contributing for how.

rockpaperscissors's People

Contributors

kn0wn-un avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.