편집 기록

편집 기록
  • 프로필 유동욱님의 편집
    날짜2020.04.21

    C++ 배열 응용 육목 만들기 질문


    안녕하세요,

    금융공학 전공하면서 C++ 수강중인 대학생입니다. 최근에 막 배열 배우고 배열 응용 육목 짜기 과제를 받았는데요. 처음 시작할때 임시로 const int N을 임의로 설정하고 아래 사진 같은 경우는 N = 19일 경우 2d 배열로 char board[N][N]의 경우입니다. 프로그램은 흑 백 팀으로 나뉘어 B(black)이 시작을 해서 주어진 칸 안에 자리를 입력하고 (H14 밑 사진과 같이) 그리고 W(white)가 두번 기회를 얻고, 그 후 검정이 두번 기회를 얻고 (흑 > 백 > 백 > 흑 > 흑 > 백 > 백 > 흑 > 흑 ...) 육목을 채우면 끝나는 게임입니다. 마지막 칸이 찼는데도 육목이 없을경우는 "Draw Game!"이고 아닐경우 각각 "Black wins/White wins"가 됩니다. 제한사항은 보드 사이즈를 정하는 const int N 이외에는 global variables를 사용할 수 없고 프로그램 안에 최소 4개 이상의 함수, 그리고 그 중 최소 2개의 함수는 배열 변수를 포함하고 있어햐 합니다.

    이미지 이미지

    코드 어떻게 짜야할지 도움 주시면 정말 감사하겠습니다 ㅠㅠ.

    현재 배열판은

    #include <iostream>
    #include <iomanip>
    using namespace std;
    
    const int N = 19;
    
    int main() {
        int array[N][N];
    
        for (int i = 0; i <= N; i++) {
            if (i == 0) {
                cout << "  ";
                for (int j = 0; j < N; j++) {
                    cout << " " << (char)(65 + j); /*apply ASCII code/table and use casting to indicate characters. */
                    /*could and would have used printf("%2c", 65 + j) instead of using an extra " " after cout.*/
                }
            }
            else {
                if (i <= 10) {
                    cout << " " << i - 1; /*could have used printf("%2d", i - 1); instead of using an extra " " if it was C.*/
                }
                else if (i > 10) {
                    cout << i - 1; /*could have used printf("%2d", i - 1); instead of using an extra " " if it was C.*/
                }
                for (int j = 0; j < N; j++) {
                    cout << " .";
                }
            }
            cout << endl;
        }
    }
    

    이렇게 만들었습니다. 여기서부터 막히네요..

  • 프로필 알 수 없는 사용자님의 편집
    날짜2020.04.20

    C++ 배열 응용 육목 만들기 질문


    안녕하세요,

    금융공학 전공하면서 C++ 수강중인 대학생입니다. 최근에 막 배열 배우고 배열 응용 육목 짜기 과제를 받았는데요. 처음 시작할때 임시로 const int N을 임의로 설정하고 아래 사진 같은 경우는 N = 19일 경우 2d 배열로 char board[N][N]의 경우입니다. 프로그램은 흑 백 팀으로 나뉘어 B(black)이 시작을 해서 주어진 칸 안에 자리를 입력하고 (H14 밑 사진과 같이) 그리고 W(white)가 두번 기회를 얻고, 그 후 검정이 두번 기회를 얻고 (흑 > 백 > 백 > 흑 > 흑 > 백 > 백 > 흑 > 흑 ...) 육목을 채우면 끝나는 게임입니다. 마지막 칸이 찼는데도 육목이 없을경우는 "Draw Game!"이고 아닐경우 각각 "Black wins/White wins"가 됩니다. 제한사항은 보드 사이즈를 정하는 const int N 이외에는 global variables를 사용할 수 없고 프로그램 안에 최소 4개 이상의 함수, 그리고 그 중 최소 2개의 함수는 배열 변수를 포함하고 있어햐 합니다.

    이미지 이미지

    코드 어떻게 짜야할지 도움 주시면 정말 감사하겠습니다 ㅠㅠ.

    현재 배열판은

    include

    include

    using namespace std;

    const int N = 19;

    int main() { int array[N][N];

    for (int i = 0; i <= N; i++) {
        if (i == 0) {
            cout << "  ";
            for (int j = 0; j < N; j++) {
                cout << " " << (char)(65 + j); /*apply ASCII code/table and use casting to indicate characters. */
                /*could and would have used printf("%2c", 65 + j) instead of using an extra " " after cout.*/
            }
        }
        else {
            if (i <= 10) {
                cout << " " << i - 1; /*could have used printf("%2d", i - 1); instead of using an extra " " if it was C.*/
            }
            else if (i > 10) {
                cout << i - 1; /*could have used printf("%2d", i - 1); instead of using an extra " " if it was C.*/
            }
            for (int j = 0; j < N; j++) {
                cout << " .";
            }
        }
        cout << endl;
    }
    

    }

    이렇게 만들었습니다. 여기서부터 막히네요..