From d599dafc7028f607cb9ae31de09821114899376e Mon Sep 17 00:00:00 2001 From: Doi Kim <154426332+d0ikim@users.noreply.github.com> Date: Tue, 8 Oct 2024 20:49:40 +0900 Subject: [PATCH] =?UTF-8?q?docs:=20=EA=B8=B0=EB=8A=A5=20=EA=B5=AC=ED=98=84?= =?UTF-8?q?=20=EB=AA=A9=EB=A1=9D=20=EC=9E=91=EC=84=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 다른분 보면 README.md 이거 커밋 올릴때 완전 다 나온것 같던데 나는 아직 이상한 과정인것 같은데,, 이걸 올리는게 맞나 싶지만 구현 전에 올렸어야 하지만,, 늦었지만,, feat: 자동차 이름, 횟수 입력받는 기능 구현 까지 .. 함께 함 throw문부터 다시 node src/App.js 해 봐야할듯 --- docs/README.md | 43 +++++++++++++++++++++++++++++++++++++++++++ src/App.js | 26 +++++++++++++++++++++++++- 2 files changed, 68 insertions(+), 1 deletion(-) create mode 100644 docs/README.md diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 000000000..5c44b5616 --- /dev/null +++ b/docs/README.md @@ -0,0 +1,43 @@ +**기능을 구현하기 전 `docs/README.md`에 구현할 기능 목록을 정리**해 추가한다. + +- **Git의 커밋 단위는 앞 단계에서 `docs/README.md`에 정리한 기능 목록 단위**로 추가한다. + +# 구현할 기능 목록 + +## 입출력 클래스 View.js (mission-utils.Console) + +- [ ] 경주 할 자동차 이름(이름은 쉼표(,) 기준 구분) 입력받기 + "경주할 자동차 이름을 입력하세요.(이름은 쉼표(,) 기준으로 구분)" +- [ ] 시도할 횟수(숫자) 입력받기 `Console.readLineAsync` + "시도할 횟수는 몇 회인가요?" +- [ ] 각 차수별 실행 결과 출력($이름 : -? 형태) `Console.print` + "실행 결과\n" + pobi : - + woni : + jun : - + + pobi : -- + woni : - + jun : -- + + pobi : --- + woni : -- + jun : --- + +- [ ] 시도할 횟수만큼 게임 라운드 완료 시, 우승자 안내문구 출력 + 최종 우승자 : pobi, jun + - 단독 우승자(최종 우승자 : $누구) + - 공동 우승자(최종 우승자 : $누구, $누구) + +--- + +## 차 클래스 User.js + +- name(String) : +- rollDice(숫자) : if(pickNumberInRange(0,9) >= 4) +- status(숫자) + +## 게임진행 클래스 Race.js (mission-utils.Random) + +- [ ] 시도할 횟수(숫자) round변수 만큼 게임진행시키는 전체감싸는 반복문 +- [ ] 라운드마다, 자동차별 `Random.pickNumberInRange(0,9)`로 각각 전진(4이상시) or 멈춤(3이하시) `status`변수 diff --git a/src/App.js b/src/App.js index c38b30d5b..838ae0e97 100644 --- a/src/App.js +++ b/src/App.js @@ -1,5 +1,29 @@ +import { MissionUtils } from "@woowacourse/mission-utils"; + class App { - async play() {} + async play() { + let userNames = await MissionUtils.Console.readLineAsync( + "경주할 자동차 이름을 입력하세요.(이름은 쉼표(,) 기준으로 구분)\n" + ); + userNames = userNames.split(","); + //MissionUtils.Console.print(userNames); // userNames 분리 확인용 + + let roundNum = Number( + await MissionUtils.Console.readLineAsync("시도할 횟수는 몇 회인가요?\n") + ); + try { + if (typeof roundNum !== "number" || roundNum < 1) + throw new Error("[ERROR] 잘못된 값을 입력하셨습니다.\n"); + } catch (e) { + console.log(e); + } + + MissionUtils.Console.print(roundNum); // roundNum 입력 확인용 + } } export default App; + +// 위 만든 시작점 App클래스로 프로그램 실행시키는 코드 +const app = new App(); +app.play();