C/C++
틱택토 게임입니다. a 1 b 1 형식으로 입력받아 처리할 수 있도록 수정하고 싶은데 어떻게 해야할지 모르겠습니다ㅠㅠ
// 판 범위 밖으로 나가는지 검사
int isInRange(int x, int y) {
    return x >= 0 && x < L&& y >= 0 && y < L;
}

// 판의 해당 칸에 새로운 말을 놓을 수 있는지 검사
int isValid(const char board[L][L], int x, int y) {
    return isInRange(x, y) && board[y][x] == ' ';
}

// 전달받은 플레이어에게서 말을 놓을 위치를 입력받음
// 1: 입력 성공
// 2: 잘못된 입력
int playerInput(const char* name, const char board[L][L], int* x, int* y) {
    printf("[<] %s 차례\n", name);
    printf("[>] 줄, 칸 수 입력: ");
    int a, b;
    scanf(" %c %d", &a, y);
    b = a - 97;
    x = &b;
    (*x)--;
    (*y)--;
    if (!isValid(board, *x, *y))
    {
        printf("[<] 이 자리에는 놓을 수 없어요! 다시 입력해 주세요.\n");
        return 0;
    }
    return 1;
}

 

댓글 0