Как проверить, является ли местоположение массива определенным числом - PullRequest
0 голосов
/ 26 апреля 2019

Я нахожусь в середине проекта (на C), где я программирую игру в бинго, и есть одна последняя функция, которая должна проверить, есть ли бинго или нет.У меня есть массив из 5 х 5 сгенерированных случайных чисел, и я генерирую случайное число с помощью пользовательского ввода.Как заставить массив изменить это число (если оно на самом деле в массиве) на 0, а затем проверить, есть ли бинго или нет с помощью пользовательского ввода?

Вот код для генерации массива

for (int row = 0; row < 5; row++) {
        for(int column = 0; column < 5; column++) {
            if(row == 2 && column == 2) {
                board[row][column] = 0;
            } else {
                int num = rand() %15 + 1 +(column * 15);
                for(int i = 0; i < 75; i++) {
                    if(num == used[i]) {
                        num = rand() %15 + 1 +(column * 15);
                    }
                }
                board[row][column] = num;
                used[used_counter] = num;
                used_counter++;
            }
        }
    }
int generate_number(int boneyard[75], int *boneyard_counter) {
    int num = rand() %75 + 1;
    for (int i = 0; i <75; i++){
        if(num == boneyard[i]);
        num = rand() %75 + 1;
    }
    boneyard[*boneyard_counter] = num;
    boneyard_counter++;
    return num;
}

А вот код для генерации случайного числа.

1 Ответ

0 голосов
/ 26 апреля 2019

Вы бы сделали что-то вроде этого:

    int found_match = 0;
    for(int row = 0; row < 5; ++row){
        for(int column = 0; column < 5; ++column){
            if(board[row][column] == num){
                board[row][column] = 0;
                found_match = 1;
                goto loop_end;
            }
        }
    }
loop_end:
    if(found_match){
    /*
    Check all diagonals, rows, and columns to see if any one of them contains only zeroes,
    stopping if you find that a diagonal/row/column that does in fact contain only zeroes
    and informing the player that they've won.
    */
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...