- 숫자 야구 게임 요구사항을 파악한다.
- 요구사항에 대한 구현을 완료한 후 자신의 github 아이디에 해당하는 브랜치에 Pull Request(이하 PR)를 통해 과제를 제출한다.
숫자야구게임 - 1부터 9까지 서로 다른 수로 이루어진 3자리의 수를 맞추는 게임
- 컴퓨터 야구번호 생성
- 1에서 9까지 서로 다른 임의의 수 3개 생성한다.
- 플레이어 야구번호 입력받기
- 시스템 콘솔을 통해 값을 입력한다.
- 입력 받은 값이 숫자가 아니면 다시 입력 받도록 한다.
- 플레이어 야구번호 입력값 검증
- 야구번호 자릿수가 3자리가 아닐 경우 false 값 리턴한다.
- 숫자 0을 포함할 경우 false 값 리턴한다.
- 중복 숫자를 포함할 경우 false 값 리턴한다.
- 위 3가지 조건이 아닐 경우 true 값 리턴한다.
- 플레이어 야구번호, 컴퓨터 야구번호 비교
- 플레이어 야구번호와 컴퓨터 야구번호를 비교하여 스트라이크, 볼의 개수를 카운트한다.
- 스트라이크와 볼의 개수를 카운트한 결과를 리턴한다.
- 결과 출력 화면 생성
- 카운트한 결과를 출력한다.
- 스트라이크가 없을 경우 낫싱을 출력하고 모두 스트라이크일 경우 게임 종료 메세지를 출력한다.
- 입력받은 플레이어 야구번호 타입 변환
- 입력 받은 플레이어 야구번호 타입을 String -> List로 변환한다.
- 야구게임 진행 구현
- 컴퓨터 야구번호 생성 - 플레이어 야구번호 입력받기 - 플레이어 야구번호 입력값 검증 - 플레이어 야구번호 타입 변환 - 플레이어 야구번호 컴퓨터 야구번호 비교 - 결과 출력 순으로 진행한다.
- 플레이어 야구번호 입력을 검증한 값이 true일 때까지 야구번호 입력을 반복한다.
- 플레이어 야구번호 입력 값이 모두 스트라이크일 때까지 입력을 반복한다.
- 정답을 맞출 경우 다시 반복 시작 또는 종료할 수 있도록 처리한다.