[javascript] 반복문을 이용한 숫자 야구 게임 구현하기

이번에는 자바스크립트를 사용하여 간단한 숫자 야구 게임을 구현해 보겠습니다. 숫자 야구는 주어진 기회 안에 임의의 숫자를 맞히는 게임으로, 상대방이 숨겨둔 숫자를 추측하여 맞히는 것이 목표입니다.

게임 규칙

  1. 두 개의 1부터 9까지 서로 다른 숫자로 이루어진 임의의 3자리 숫자를 상대방이 설정합니다.
  2. 플레이어는 숫자와 위치가 맞는 “스트라이크”와 숫자는 맞지만 위치가 틀린 “볼”을 받습니다.
  3. 플레이어는 상대방이 숨겨둔 숫자를 추측하여 맞히는 것을 목표로 하며, 상대방은 플레이어의 추측에 대해 스트라이크와 볼의 갯수를 알려줍니다.
  4. 플레이어는 추측을 통해 상대방이 설정한 숫자를 맞히거나, 주어진 기회 안에 맞히지 못하면 게임이 종료됩니다.
  5. 상대방이 알려준 스트라이크와 볼을 토대로 새로운 추측을 할 수 있습니다.

숫자 야구 게임 구현하기

아래는 간단한 숫자 야구 게임을 구현하는 자바스크립트 코드입니다.

// 상대방이 설정한 숫자
let answer = [1, 5, 7];

// 플레이어의 추측
let guess = [1, 3, 5];

// 스트라이크와 볼을 계산하는 함수
function calculateScore(answer, guess) {
  let strikes = 0;
  let balls = 0;

  for(let i = 0; i < answer.length; i++) {
    if(answer[i] === guess[i]) {
      strikes++;
    } else if(answer.includes(guess[i])) {
      balls++;
    }
  }

  return { strikes, balls };
}

// 결과 출력
let result = calculateScore(answer, guess);
console.log(`스트라이크: ${result.strikes}, 볼: ${result.balls}`);

위 코드는 상대방이 설정한 숫자 answer와 플레이어의 추측 guess를 비교하여 스트라이크와 볼을 계산하는 간단한 함수를 포함하고 있습니다. 플레이어는 이러한 정보를 토대로 다음 추측을 할 수 있습니다.

이제 위 코드를 확장하여 실제 게임을 구현하는 것도 가능할 것입니다.

이로서 숫자 야구 게임을 자바스크립트를 이용하여 구현하는 방법을 알아보았습니다. 추가적으로 입력을 받고 게임의 흐름을 제어하는 부분을 추가로 구현하여 더욱 복잡한 게임을 만들어볼 수도 있습니다.

참고 자료