바둑판 위에 좌표를 어떻게 출력해야 할까요!

조회수 1997회

이제 함수 공부 후 배열 앞 부분 공부 중인데요 오목을 작성중인데 좌표를 입력받으면 바둑판 위에 출력하고 싶은데 바둑판에 좌표값을 어떻게 넣어야 해당 좌표 입력시 출력이 될까요?

이미지

0, 0 입력시 맨 왼쪽 위에 바둑돌이 놓이는 식으로 프로그래밍 하고싶습니다 ㅠ

#include <stdio.h>void display_board()
int Baduk_Board[14][14];

void Draw_BadukBoard();


void player1_turn();

void init_board()
{

    int i, j;

    for (i = 0; i < 14; i++)

        for (j = 0; j < 14; j++)  {
            Baduk_Board[i][j] = ' ';
        }
}

int main()

{

    Draw_BadukBoard();

    init_board();
    player1_turn();
}

void player1_turn()
{


    int x, y = 0;
    //board[][] 내용을 화면에 출력함.

    do {
        //플레이어의 좌표를 입력받음.
        printf("Player1의 좌표(x,y)를 입력하세요:(0~15) ");
        scanf_s("%d%d", &x, &y);
        if (Baduk_Board[x][y] != ' ') { printf("이미 다른 플레이어가 놓았습니다.다른 자리에 놓아주세요\n"); }
    } while (Baduk_Board[x][y] != ' ');
    Baduk_Board[x][y] = '○';

    //board[][]의 해당 좌표에 돌을 표기함.

}

void Draw_BadukBoard() 
{

    int i;
    int j;
    //int I;                                                
    printf("┌");
    for (i = 0; i < 14; i++)
        printf(" ┬");
    printf(" ┐\n");

    for (i = 0; i < 14; i++) {
        printf("├");
        for (j = 0; j < 14; j++)
            printf(" ┼");
        printf(" ┤\n");
    }

    printf("└");
    for (i = 0; i < 14; i++)
        printf(" ┴");
    printf(" ┘");
}
  • 글쎄요 바둑판 그리는 코드를 보니 출력 자체가 바둑판 중심으로 되어있어서 한 칸을 그리는데 네 종류의 그림이 합쳐져있기 때문에 그림 상의 빈 칸에 정확히 바둑돌이 놓이게 할 수는 없지 않을까 싶네요. ┬O┬ 이런 식으로 출력될 것 같은데요? HIAOAIH 2020.6.13 13:26

1 답변

  • 정말 꼭 저 특수문자들을 써야 하는 게 아니라면 이런 그리드로 바꿔보세요. 배열 공부를 하시는 중이라면 배열을 공부하셔야지 출력 최적화 같은 문제에 발목 잡히실 필요는 없지 않겠어요?

       0  1  2  3  4  5  6  7  8  9 10 11 12 13 14
    A  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    B  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    C  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    D  .  .  .  .  .  .  .  .  .  x  .  .  .  .  .
    E  .  .  .  .  .  .  .  .  o  .  .  .  .  .  .
    F  .  .  .  .  o  x  .  o  .  .  .  .  .  .  .
    G  .  .  .  .  .  x  o  .  .  .  .  .  .  .  .
    H  .  .  .  .  .  o  x  .  .  .  .  .  .  .  .
    I  .  .  .  .  x  .  .  .  .  .  .  .  .  .  .
    J  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    K  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    L  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    M  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    N  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    O  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    

    참고: 실제 바둑칠판도 비슷하게 생겼습니다.

    이미지

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)