카이로스의 시간

c언어로 만든 간단한 오목 프로그램 - 1 본문

Language/C,C++

c언어로 만든 간단한 오목 프로그램 - 1

차녕 2017. 9. 14. 02:21

첫 포스팅입니다.^^

거의 처음 c언어시작할 때 만들어본 프로그램이고 그만큼 미숙했던 프로그램이지만, 처음 포스팅으로 뭘할까 고민끝에 올립니다.

 

-주제 : 오목 간단한 구현

-방향 : 두명의 플레이어가 번갈아가며 수를 두고 오목룰을 적용한다. 도중에 저장하고 종료가 가능, 나중에 불러오기 할 수 있다.

 

 

-SDL검사 체크 해제

우선 visual studio에서 프로젝트 만들 때 설정창에서

SDL(Security Develoment Lifecycle)검사 체크되어있을텐데, 해제하시고 시작하시기 바랍니다.

이유는 이게 더 편합니다.. 

이게 체크되어있으면 printf 대신에 printf_s 써야되고 그런부분들이 있습니다. 그래서 불편해서 저는 이거 체크 해제하고 시작합니다.

 

 

 

-첫 화면 만들기

간단합니다. 2중배열을 만들고 그안에 수를 지정해서 수에따라 이중 for문을 돌려 구현 할 것입니다.

출력은 printf("┏") 이런식으로 사용해주면 되겠죠. (특수문자는 ㅂ누르시고 한자키 누르시면 있습니다.)

오목판은 가로 19줄 세로 19줄입니다 그래서 이중 for문안에 변수가 19번씩 돌면 됩니다.

 

이렇게 이중 for문 만들고

 

 

이중배열 만듭니다.

 

쉽습니다.

 

-두번째 화면(오목판) 만들기

비슷합니다. 똑같은 방식으로 만들어주는데 이번에는 중간에 격자가 들어가야되서 ┼ 이특수문자를 적절하게 사용해야 합니다.

그리고 글꼴색 지정으로 오목판처럼 구현합니다.(글꼴색은 text의색,background색 두가지 지정할 수 있습니다. text를 검정 background을 노란색으로 합니다.)

 

SetColor라는 함수를 추가해 줍니다.

색상은 0~15까지 있습니다. 0이면 검정 15이면 흰색입니다.

cf) '<<'이건 bit shifting인데 이소스에서는 거의 안쓰이기때문에 따로 포스팅하겠습니다.

대충설명하면 text,back을 0~15인 16개 데이터를 사용하기 때문에 back으로 앞에 4자리는 back자리 뒤에 4자리는 text자리가 들어갑니다. (2^4 = 16)

 

노란색은 14입니다. 그래서 이와같이쓰면 text색은 검정 background색은 노란색이 되겠습니다.

이렇게 SetColor()로지정한 함수를 쓸 때마다 그다음에 들어가는 코드중 출력부분은 위와같이 설정한 색상이 들어가게됩니다. 그래서 적절하게 지정해주면 콘솔창에서 색상을 조절하며 꾸미는게 가능합니다.

 

 

이제 판을 다 만들었습니다.

 

두번째 포스팅에는 키보드 입력받기,키보드로 커서 위치 지정, 룰적용 올리겠습니다.

'Language > C,C++' 카테고리의 다른 글

[자료구조] 연결리스트 간단한 구현  (0) 2017.12.25