2012-03-25 3 views
0

1 플레이어 모드와 2 플레이어 모드에서 재생할 수있는 간단한 Tic Tac Toe 게임을 C#으로 만들었습니다.C# Tic Tac Toe Console App

나는 (컴퓨터 대 플레이어 모드에서) 정확하게 반응하도록 컴퓨터를 프로그래밍했지만, 필자가 생각한 것보다 코드가 훨씬 크다고 생각한다. 왜냐하면 나는 가능한 모든 조합을 수동으로 확인했고, 코드를 최소화하는 방법을 찾는 것 같습니다. 변수 https://gist.github.com/2192374

설명 : 여기

는 makeComputerMove() FUNC이다

CHAR [] 보드 : 2D 배열은 'X'및 'O'

문자 형상을 포함 : 우선 순위 이동을 결정하기 위해 사용하는 모양입니다. 먼저 컴퓨터를 'O'로 설정하여 컴퓨터가 승리하려고합니다. 이길 수 없다면 막을 시도합니다. 차단할 것이 없으면 보드의 다른 'O'근처에 'O'를 설정하려고합니다.

위치 P : 값 행과 대령

감사를 포함하는 객체입니다.

편집 : 이제 사람들이 내 코드를 다시 작성하길 원한다고 생각합니다. 방금 추가 했으므로 내가 한 일을 볼 수있었습니다. 나는 (다른 방식으로 문제에 접근하여) 조언만을 요구하고있다.

+0

여기에서 코드 검토 요청을 게시해야합니다. http://codereview.stackexchange.com/ –

+0

본질적으로 신청서를 다시 작성하라고하십니까? –

+0

내가 배우려고하는 것이 가치가 없기 때문에, 내가 작성한 코드가 아닌 내 생각과는 다른 방식으로 제안하고있다. – Novak

답변

1

대략적인 아이디어를 얻으려면 여기 MinMax 알고리즘을 읽어보십시오. 기본적으로 가능한 동작을 통해 되돌아 가고, 가능한 모든 동작으로 foreach 가능한 이동을하고, 특정 동작 수 (깊이)로 이동합니다. 이것은 재귀를 사용합니다. TicTacToe이므로 "깊이"를 잃고 정지 조건으로 "끝"수 있습니다.

관련 문제