Skip to content

greedy-team/javascript-greedy-roulette

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

탐욕의 룰렛 게임

🔍 진행방식

  • 미션은 기능 요구사항, 프로그래밍 요구사항, 과제 진행 요구사항 세 가지로 구성되어 있다.
  • 세 개의 요구사항을 만족하기 위해 노력한다. 특히 기능을 구현하기 전에 기능 목록을 만들고, 기능 단위로 커밋 하는 방식으로 진행한다.

🎯 기능 요구사항

확률 기반 룰렛 베팅 게임이다.

  • 게임 시작 시 플레이어는 초기 자금 10,000원을 가진다.
  • 플레이어는 매 라운드마다 베팅을 진행하거나 게임을 중단할 수 있다.
  • 베팅을 진행하면 색상베팅 금액을 입력한다.
  • 룰렛을 돌리면 결과는 즉시 나오지 않으며, 2초(2000ms) 가 지난 후 결과가 출력된다.
  • 룰렛 결과가 플레이어가 선택한 색상과 같으면 베팅 성공, 다르면 베팅 실패이다.
  • 자금이 0원이 되면 게임이 종료된다.
  • 게임이 종료되면 최종 자금플레이한 라운드 수를 출력한다.
  • 사용자가 잘못된 값을 입력한 경우 alert으로 에러 메시지를 보여주고, 다시 입력할 수 있게 한다.

🎰 룰렛 규칙

룰렛은 총 20칸으로 구성되어 있으며, 각 칸은 아래 색상 중 하나로 이루어져 있다.

색상 칸 수 확률 배당
YELLOW 10 50% x1
GREEN 5 25% x3
BLUE 3 15% x5
PURPLE 1 5% x10
RED 1 5% x20
  • 각 칸은 동일한 확률로 선택된다. (20칸 중 1칸 = 5%)
  • 배당 적용 방식은 아래 규칙을 따른다.
    • 베팅 시 베팅 금액은 자금에서 차감된다.
    • 베팅 성공: 베팅 금액 + (베팅 금액 × 배당)을 획득한다. (원금 회수 + 배당금)
    • 베팅 실패: 베팅 금액을 잃고 라운드가 종료된다.

📌 배당 계산 예시

베팅 색상 베팅 금액 결과 계산 획득 금액
YELLOW(x1) 500원 성공 500 + (500 × 1) 1,000원
GREEN(x3) 1,000원 성공 1,000 + (1,000 × 3) 4,000원
RED(x20) 100원 성공 100 + (100 × 20) 2,100원
BLUE(x5) 500원 실패 - 0원

💻 실행 결과 예시

(미션 완성 후 실행결과 첨부할 것)


✅ 프로그래밍 요구사항

  • var를 사용하지 않는다. const, let만 사용한다.
  • 전역 변수를 사용하지 않는다.
  • 외부 라이브러리를 사용하지 않고, 순수 Vanilla JS로만 구현한다.
  • Airbnb 자바스크립트 코드 컨벤션을 지키면서 프로그래밍 한다.
  • indent(인덴트, 들여쓰기) depth를 2가 넘지 않도록 구현한다.
    • 예를 들어 while문 안에 if문이 있으면 들여쓰기는 2이다.
    • 힌트: indent depth를 줄이는 좋은 방법은 함수(또는 메소드)를 분리하는 것이다.
  • 함수(또는 메소드)가 한 가지 일만 하도록 최대한 작게 만들어라.
  • import 문을 이용해 스크립트를 모듈화하고 불러올 수 있게 만든다.
  • 함수(또는 메소드)의 길이가 15라인을 넘어가지 않도록 구현한다.

📝 과제 진행 요구사항

  • 미션 저장소를 Fork/Clone해 시작한다.
  • 기능을 구현하기 전에 docs/README.md 파일에 구현할 기능 목록을 정리해 추가한다.
  • Git의 커밋 단위는 앞 단계에서 README.md 파일에 정리한 기능 목록 단위로 추가한다.

✉️ 미션 제출 방법

  • 미션 구현을 완료한 후 GitHub을 통해 제출한다.
  • 미션을 제출할 때에는 docs의 markdown 파일에 기능 목록이 적어져 있어야한다.
  • 테스트를 통과해야만 제출이 가능하다.

✔️ 테스트 실행 가이드

  • 테스트 실행에 필요한 패키지 설치를 위해 Node.js 버전 20 이상이 필요하다.
  • 다음 명령어를 입력해 패키지를 설치한다.
npm install
  • 설치가 완료되었다면, 다음 명령어를 입력해 테스트를 실행한다.
npm run test
  • 모든 테스트가 pass한다면 성공!

🔗 참고 링크

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published