01/10/2018, 14:51

Giả lập dealer chia bài

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define CARD 52
#define FACE 13
#define SUIT 4

void dealer(int deck[][FACE], char* suit[], char* face[], int player)
{
    int draw;
    int i = 1;
    size_t row;
    size_t col;
    size_t card;

    for(card = 1; card <= player*5; ++card){
        for(row = 0; row < SUIT; ++row){
            for(col = 0; col < FACE; ++col){

                if(deck[row][col] == card){
                    printf("Player %d", i);
                    printf("%5s %-8s
", face[col], suit[row]);
                    if(card % 5 == 0){
                        puts("");
                        ++i;
                    }
                }
            }
        }
    }
}

void shuffle(int deck[][FACE], char* suit[], char* face[]);
int main()
{
    srand(time(NULL));
    int deck[SUIT][FACE] = {{0}};
    char* suit[SUIT] = {"Co", "Ro", "Chuon", "Bich"};
    char* face[FACE] = {"Mot", "Hai", "Ba", "Bon", "Nam", "Sau",
                        "Bay", "Tam", "Chin", "Muoi", "Boi", "Dam", "Gia"};
    int player;
    shuffle(deck, suit, face);

    printf("%s", "Enter number of player: ");
    scanf("%d", &player);
            dealer(deck, suit, face, player);

}

void shuffle(int deck[][FACE], char* suit[], char* face[])
{
    size_t card;
    size_t row;
    size_t col;

    for(card = 1; card <= CARD; ++card){
        do{
            row = rand() % SUIT;
            col = rand() % FACE;
        }while(deck[row][col] != 0);
        deck[row][col] = card;
    }
}

Nếu tôi giải quyết vấn đề về chia bài thế này có ổn không, code nó có quá dài dòng?

Bài liên quan
0