/java-baseball-precourse

숫자 야구게임 미션을 위한 저장소

Primary LanguageJava

숫자 야구 게임

진행 방법

  • 숫자 야구 게임 요구사항을 파악한다.
  • 요구사항에 대한 구현을 완료한 후 자신의 github 아이디에 해당하는 브랜치에 Pull Request(이하 PR)를 통해 과제를 제출한다.

과제 제출 과정

기능 요구사항

숫자야구게임 - 1부터 9까지 서로 다른 수로 이루어진 3자리의 수를 맞추는 게임

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