오늘은 뭐 돌 놓기.

이것만 하고 5줄 확인하는 함수만 만들면 끝나네요.

사실 다 만들어 놓고 조금씩 포스팅하는 환타 ㅋㅋㅋ

돌 놓는 함수는 따로 만들지 않고

move 함수에 case ENTER:만 추가해서 해보겠습니다.

윗부분에

추가하고

돌 좌표를 저장할 변수도 선언하고


move함수 마지막에 추가

이러면 돌을 놓고나서 키보드를 움직이면 또 지워지니까

돌이 있는지 확인하는 knock함수도 만들어주고


move 함수 switch문의 ENTER를 제외한 모든 case에


이 글이 유익하다면 (굽신굽신) ->

Trackback Address >> http://zfanta.com/trackback/306 관련글 쓰기

  1. 학생 2008/03/08 13:33  address  modify / delete  reply

    이거 왜 실행이 안됄까요 ㅠㅠ,;;;;;
    계속 에러가 ㅠ.ㅠ;

  2. 학생 2008/03/08 13:36  address  modify / delete  reply

    c:\documents and settings\administrator\my documents\c\cpp1.cpp(238) : error C2448: '<Unknown>' : function-style initializer appears to be a function definition
    Error executing cl.exe.
    이렇게 에러가 나요 ㅠ,ㅠ;; 어떻게 고쳐야 하는지요 ㅠㅠ.;; 차근차근 배우고 싶어요;

  3. 학생 2008/03/09 02:56  address  modify / delete  reply

    저... 죄송하지만 질문쩜 할께요;;
    int knock(x,y)
    {
    gotoxy(x,y);
    puts("○");
    if(board[x][y]==1)
    return 0;

    else
    return 1;
    }
    ////// 요 함수도 잘모르겠어요... board[x][y]가 1이면 0을 호출하구 아니면 1을 호출하는게
    뭘뜯하는건지;; ㅠㅠ.;;; 아직 배우는 중이라;;;; 아르켜주세효 ㅎㅎㅎ;;;

    case ENTER :
    if(board[x][y] == 0)
    {
    board[x][y]=1;
    gotoxy(x,y);
    puts("○");
    /// 이부분에서 엔터를 누를 경우. board[x][y]값이 0이랑 같으면 board[x][y]가 1로 치환돼고
    x,y좌표로 가서 ○ <---이걸 둔다는건데;;; 어떻게
    엔터를 치면 돌이 놓여지는지 모르겠어요;; 이해를 못하겠어요 ㅠ.ㅠ...... 알려주세요;;;;

    •  address  modify / delete 2008/03/09 12:17 Favicon of http://zfanta.com BlogIcon  환타

      board[][]배열에는 판의 상태를 나타냅니다. 0은 빈 곳,1은 돌이 있는 곳,
      knock함수는 case LEFT,RIGHT,UP,DOWN 에서 사용되는 데 만약 바로 전 위치에 돌이 없었다면 판을 다시 그려줘야 합니다. 그래서 board[x][y]가 1이 아니면(그 곳에 돌이 없으면) 1을 반환해서 if문의 내용을 실행합니다.

      case ENTER는 엔터를 누를 때 좌표(x,y) 배열[x][y]에 돌이있다는 값인 1을 대입하고 화면에 돌을 그려주는 역할을 합니다.

      이해 안되는 부분마다 질문 많이해주세요 ㅎㅎ

  4. 학생 2008/03/09 13:14  address  modify / delete  reply

    ㅎㅎ.. 여기까지 이제 이해가 간거 같아요 ㅎㅎ/
    board[][]이게 초기값을 설정안해주면 값이 0이라는걸 이제 알았어요;;;ㅎㅎ;
    차근차근 다음단계까지 보면서 나중에 또 질문해도 돼죠~? ㅎㅎ//

    •  address  modify / delete 2008/03/09 14:42 Favicon of http://zfanta.com BlogIcon 환타

      수고하셨어요^^
      초기화 없이 0으로하려면 전역변수로 전언을 해야합니다.
      질문 환영이에요 ㅎㅎ

  5. 왕초보ㅠ 2009/06/19 08:54  address  modify / delete  reply

    return 0;으로 되어있는거는.... 화면을 어떤 상태로 만드는 건가요?? 좌표에 돌이 있으면 return0;인데 return0;으로 하면 처음으로 되돌린다?? 그런건가요??

  6. 초보나그네 2010/04/23 17:29  address  modify / delete  reply

    지나가던 학생인데 질문좀 드려도 될까요?? 여기 짜 놓으신 프로그램이 혹시 네트워크상에 클라이언트가 접속해서 같이 오목을 둘 수 있는 프로그램인가요?? 워낙 기초도 모르는 초보라 엉뚱한 질문드립니다 ㅠㅠ