Skip to content

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

Notifications You must be signed in to change notification settings

kommadot/java-baseball

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

숫자 야구 게임

규칙

  • 기본적으로 1부터 9까지 서로 다른 수로 이루어진 3자리의 수를 맞추는 게임이다.

  • 같은 수가 같은 자리에 있으면 스트라이크, 다른 자리에 있으면 볼, 같은 수가 전혀 없으면 포볼 또는 낫싱이란 힌트를 얻고, 그 힌트를 이용해서 먼저 상대방(컴퓨터)의 수를 맞추면 승리한다.

    • [예] 상대방(컴퓨터)의 수가 425일 때, 123을 제시한 경우 : 1 스트라이크, 456을 제시한 경우 : 1스트라이크 1볼, 789를 제시한 경우 : 낫싱
  • 위 숫자 야구게임에서 상대방의 역할을 컴퓨터가 한다. 컴퓨터는 1에서 9까지 서로 다른 임의의 수 3개를 선택한다. 게임 플레이어는 컴퓨터가 생각하고 있는 3개의 숫자를 입력하고, 컴퓨터는 입력한 숫자에 대한 결과를 출력한다.

  • 이 같은 과정을 반복해 컴퓨터가 선택한 3개의 숫자를 모두 맞히면 게임이 종료된다.

  • 게임을 종료한 후 게임을 다시 시작하거나 완전히 종료할 수 있다.

프로그램 실행 결과

숫자를 입력해주세요 : 123

1 스트라이크 1볼

숫자를 입력해주세요 : 145

1 볼

숫자를 입력해주세요 : 671

2 볼

숫자를 입력해주세요 : 216

1 스트라이크

숫자를 입력해주세요 : 713

3 스트라이크

3개의 숫자를 모두 맞히셨습니다! 게임 종료

게임을 새로 시작하려면 1, 종료하려면 2를 입력하세요.

1

숫자를 입력해주세요 : 123

1 스트라이크 1볼

...

기능

  1. 초기 숫자 세팅

    1. 랜덤 3자리 수 설정
      • 랜덤 3자리 넘버 반환받아서 검증한다. (채택 , 사유 : 입력값 검증 메소드를 사용하면 코드 재사용이 가능함.)
        • 검증 실패시 다시 랜덤수(반복)
      • 자릿수마다 랜덤수를 받아서 하나하나 검증한다.
    2. 각 자리수는 유니크 해야함
  2. 사용자 입력

    1. 입력값 검증

      • 숫자로 받을 시 틀린 문자인지 검증할 필요는 없지만 0이 들어가는지 검증해야함 (채택)
      • 문자로 받을 시 어차피 문자로 변환을 해야하기 때문에 단계가 하나 줄지만 숫자로 구성되어 있는지 검증 해야하는 프로세스가 생김
      1. 양수인지 검증
      2. 3자리인지 검증
      3. 0이 들어가는지 검증
      4. 중복숫자가 있는지 검증
  3. 스트라이크 검증

    • 각 자리의 숫자와 비교해서 같을 시 +1 해준다.
  4. 볼 검증

    • 자리는 다르지만 존재는 할 시 +1 해준다.
      • 2중 for문
  5. 결과 출력

    1. 스트링 빌더로 각 값에 대한 결과물들을 합쳐준다.
    2. 다 끝나고 출력해준다.
  6. 게임 재시작

클래스

  • 메인 클래스
    • 게임 클래스 생성, 호출
  • 게임 클래스
    • 컴퓨터의 야구 숫자
    • 스트라이크 검증
    • 볼 검증
    • 게임 종료 boolean

About

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

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%