Skip to content

dpdmstjs/java-hangman

 
 

Repository files navigation

행맨 게임

행맨 게임을 할 수 있는 프로그램을 만듭니다. 컴퓨터는 미리 정의된 목록에서 단어를 무작위로 선택하고 사용자는 단어의 문자를 추측해야 합니다.

컴퓨터는 사용자의 추측에 대한 피드백을 제공하며 라운드가 진행됩니다. 사용자는 정답 단어를 추측하거나 시도 횟수가 부족할 때까지 추측을 반복하게 됩니다.

미션 제출 방법

  1. Issue 또는 개인 연락으로 미션 참여 희망을 표시해주세요.
  2. 레포지토리를 fork 하고, 단계별로 mission을 진행해주세요.
  3. 단계별 변화를 확인할 수 있도록 단계가 표시된 commit을 진행해주세요. (ex, step1 : 사용자 추측 입력 구현)
  4. 한번에 모든 단계를 다 하려하지 마시고, 5일이 넘어가는 경우 그 상태로 PR을 작성해주세요.
  5. PR은 본인 브랜치로 쏴주세요.
  6. 코드 리뷰가 오면 피드백을 반영하고 approve를 받을 때까지 코드를 수정해주세요.
  7. 다른 사람의 코드를 리뷰해주세요. PR을 작성한 사람은 누구나 다른 사람의 코드를 리뷰할 수 있어요.

요구 사항

1단계

  1. 게임 횟수와 목숨 횟수를 입력한다.
  2. 미리 정의된 정답 단어 중 하나가 무작위로 선택된다.
  3. 매 라운드마다 목숨의 횟수와 현재까지 추측에 성공한 점수 보드를 출력한다.
  4. 사용자에게 문자를 입력하라는 메시지를 표시한다.
  5. 사용자의 추측에서 일치하는 위치의 알파벳이 있다면 이를 표시한다.
  6. 사용자가 모든 글자를 정확히 맞춘다면 축하 메시지를 안내한다.
  7. 목숨의 횟수가 끝났다면 실패 메시지를 안내한다.
  8. 다음 게임이 진행된다.
ou : 게임 횟수와 목숨을 입력하세요.
in : 2, 4
ou : 1번째 게임이 시작됩니다. 정답 단어는 5글자 입니다.
ou : 1 라운드 : _____, 목숨 4
in : p
ou : 2 라운드 : _pp__, 목숨 4
in : i
ou : 3 라운드 : _pp__, 목숨 3
in : l
ou : 4 라운드 : _ppl_, 목숨 3
in : e
ou : 5 라운드 : _pple, 목숨 3
in : a
ou : 6 라운드 : apple, 목숨 3
ou : 축하합니다. 정답입니다.

ou : 다음 게임을 시작합니다.
ou : 2번째 게임이 시작됩니다. 정답 단어는 7글자 입니다.

2단계

정답과 예시에서 벗어나 나올 수 있는 잘못된 시나리오들을 생각해보고 본인의 방식대로 처리한다.

예시) 사용자가 잘못된 형식의 추측을 입력할 경우 안내 메시지와 함께 재입력 프로세스를 진행한다.

3단계

각 라운드에서 진행한 라운드 결과를 저장한다. 라운드 결과에는 라운드id, 라운드에 남은 목숨 수, 라운드의 점수 보드, 사용자 추측이 포함된다.
각 게임의 결과를 저장한다. 게임 결과에는 게임id, 사용자 성공/실패 여부, 남은 목숨 개수, 게임의 정답이 포함된다.

게임이 종료되면 해당 게임의 결과 -> 그 게임의 각 라운드 결과를 차례로 출력한다.

...
ou : 축하합니다. 정답입니다.
ou : 
=== Game Result ===
게임 id : 1, 추측 : 성공, 남은 목숨 : 3, 정답 : apple 

라운드 id : 1, 남은 목숨 : 4, _____, 사용자 입력 : p
라운드 id : 2, 남은 목숨 : 4, _pp__, 사용자 입력 : i
라운드 id : 3, 남은 목숨 : 3, _pp__, 사용자 입력 : l
라운드 id : 4, 남은 목숨 : 3, _ppl_, 사용자 입력 : e
라운드 id : 5, 남은 목숨 : 3, _pple, 사용자 입력 : a
===================

ou : 다음 게임을 시작합니다.
ou : 2번째 게임이 시작됩니다. 정답 단어는 7글자 입니다.

4단계

게임과 라운드 결과를 조회할 수 있다. 선택 메뉴를 출력한다. 메뉴에는 게임하기, 게임 결과 보기, 라운드 결과 보기가 있다.

  1. 게임하기라면 위의 1,2단계가 그대로 진행된다.
  2. 게임 결과 보기라면 게임의 id를 입력하고 게임 결과를 출력한다.
  3. 라운드 결과 보기라면 라운드의 id를 입력하고 라운드 결과를 출력한다.
ou : 메뉴를 선택합니다. (1 : 게임하기, 2 : 게임 결과 보기, 3 : 라운드 결과 보기)
in : 2
ou : 게임 id를 입력해주세요.
in : 1
ou : 
=== Game Result ===
게임 id : 1, 추측 : 성공, 남은 목숨 : 3, 정답 : apple 

라운드 id : 1, 남은 목숨 : 4, _____, 사용자 입력 : p
라운드 id : 2, 남은 목숨 : 4, _pp__, 사용자 입력 : i
라운드 id : 3, 남은 목숨 : 3, _pp__, 사용자 입력 : l
라운드 id : 4, 남은 목숨 : 3, _ppl_, 사용자 입력 : e
라운드 id : 5, 남은 목숨 : 3, _pple, 사용자 입력 : a
===================

ou : 메뉴를 선택합니다. (1 : 게임하기, 2 : 게임 결과 보기, 3 : 라운드 결과 보기)
in : 3
ou : 라운드 id를 입력해주세요.
in : 4 
=== Round Result ===
라운드 id : 4, 남은 목숨 : 3, _ppl_, 사용자 입력 : e
===================

ou : 메뉴를 선택합니다. (1 : 게임하기, 2 : 게임 결과 보기, 3 : 라운드 결과 보기)
...

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%