- 우아한 프리코스 1주차 과제 - 숫자 야구를 구현한다.
- 필요 기능은 우아한 프리코스 - 숫자야구 에서 확인할 수 있다.
- 컴퓨터는 중복되지 않는 임의의 수 3개를 순서대로 선택한다.
- 사용자는 컴퓨터가 선택한 수를 예상하여 입력한다.
- 사용자의 입력에 대한 결과를 출력한다.
- 사용자가 입력한 수 중 컴퓨터가 선택한 수와 같은 자리에 위치한 같은 수는 스트라이크가 된다.
- 사용자가 입력한 수 중 컴퓨터가 선택한 수와 다른 자리에 위치한 같은 수는 볼이 된다.
- 스트라이크, 볼이 전부 존재하지 않는 경우 낫싱이 된다.
- 사용자가 정답을 맞히게 되면 게임이 종료된다.
- 새로운 게임을 시작할 것인지 입력을 받는다.
- 1을 입력하면 새로운 게임을 시작하여 1번으로 돌아간다.
- 2를 입력하면 게임을 끝내고 프로그램을 종료한다.
[v] 게임 초기 설정을 한다.
[v] 사용자에게 입력을 받는다.
[ ] 정답을 출력한다.
[ ] 재시작 여부를 묻는다.
- 숫자가 아닌 입력을 포함한 경우
IllegalArgumentException
을 발생시킨다. - 숫자가 세자리가 아닌 경우
IllegalArgumentException
을 발생시킨다.
- 숫자가 아닌 입력에 대해
IllegalArgumentException
을 발생시킨다. - '1', '2'가 아닌 입력에 대해
IllegalArgumentException
을 발생시킨다.
📦java-baseball-precourse
┣ 📂.git
┣ 📂.gradle
┣ 📂.idea
┣ 📂build
┣ 📂gradle
┣ 📂out
┣ 📂src
┃ ┣ 📂main
┃ ┃ ┗ 📂java
┃ ┃ ┃ ┣ 📂baseball
┃ ┃ ┃ ┃ ┗ 📜Application.java
┃ ┃ ┃ ┣ 📂baseballgame
┃ ┃ ┃ ┃ ┗ 📜Game.java
┃ ┃ ┃ ┗ 📂constant
┃ ┃ ┃ ┃ ┣ 📜Constant.java
┃ ┃ ┃ ┃ ┗ 📜StringError.java
┃ ┗ 📂test
┃ ┃ ┗ 📂java
┃ ┃ ┃ ┗ 📂baseball
┃ ┃ ┃ ┃ ┗ 📜ApplicationTest.java
┣ 📜.gitignore
┣ 📜build.gradle
┣ 📜gradlew
┣ 📜gradlew.bat
┣ 📜LICENSE
┗ 📜README.md
- baseballgame/Game : 전체 게임을 진행하는 클래스
- constant/Constant : Game에서 사용되는 상수를 관리하는 클래스
- constant/StringError : Exception에 사용될 에러 메시지를 관리하는 클래스
- 230115 - 프로젝트 시작, 구현 완료