Skip to content

Latest commit

 

History

History
45 lines (30 loc) · 2.16 KB

readme.md

File metadata and controls

45 lines (30 loc) · 2.16 KB

UI Codetest - Bowling Scoresheet

Objective

Create an application to track the score of a bowling game.

Directions

Fork this repository and create a branch for your answer submission. You may provide a link to the branch or create a pull request to this repo with your answer.

Example Scoresheet Scoresheet example

Requirements

  • Include 4 players in the game
  • Score should be entered via a form in a modal:
    • The form has a submit and cancel button
    • clicking anywhere outside the modal will close the modal
    • The form can calculate the total and apply any validation and scoring rules
    • When the answer is submitted correctly, the modal should close and the information in the scoresheet should update
  • Follow standard bowling score rules:
    • Points are from 0-10
    • X = strike
    • / = spare

Restrictions

  • CSS:
    Only normalize.css allowed, no additional css frameworks are permitted. Normalize.css is included in the provided template.
  • JavaScript:
    VanillaJS, jQuery, or Angular Core only(or similar framework - react, backbone, etc) . No extra widget libraries
  • HTML:
    Semantic, well-formed, and accessible HTML preferred

Bowling Scoring Rules

Ten-Pin bowling on Wikipedia

Every frame the player makes at least one roll.

If they knock down 10 pins they have a strike (marked with an X) and don't roll anymore in this frame, otherwise they roll once more. If that second roll knocks down the remaining pins, then they have a spare (marked with a /).

The score of a frame is the sum of their rolls. If they rolled a strike, the next 2 rolls are added to their score(whether they are 2 in the next frame, or in the case of 3 strikes in a row, the next 2 frames). In the case of a spare they add the next roll to their score.

The final frame has some special handling. If they player rolls a strike, they roll twice more (but those don't have any special strike handling, they're just added to the total). If the player rolls a spare, they roll once more.

A perfect game (all strikes, and knocking down 10 pins in all rolls on the last frame) is 300 points.