#include #include #include #include #include using namespace std; static char *colors = "CDSH"; static char *values = "23456789TJQKA"; static char *border = "+---+---+---+---+---+---+---+---+---+---+---+---+---+"; static char *facebr = "| | | | | | | | | | | | | |"; static int codes[128]; static int figures[128]; static int players[128]; static int hands[4][13]; void print_hand(int *hand) { char vals[54]; char cols[54]; int i; int j; int h; strcpy(vals, facebr); strcpy(cols, facebr); for (i = 0, j = 0; i < 13; i++, j += 4) { h = hand[i]; //printf("h=%d\n", h); cols[j + 2] = colors[h / 100]; vals[j + 3] = vals[j + 1] = values[h % 100]; } printf("%s\n%s\n%s\n%s\n%s\n", border, vals, cols, vals, border); } int main() { char deals; char line[110]; char *pc; int code; int player; players['S'] = 0; players['W'] = 1; players['N'] = 2; players['E'] = 3; codes['C'] = 0; codes['D'] = 100; codes['S'] = 200; codes['H'] = 300; figures['2'] = 0; figures['3'] = 1; figures['4'] = 2; figures['5'] = 3; figures['6'] = 4; figures['7'] = 5; figures['8'] = 6; figures['9'] = 7; figures['T'] = 8; figures['J'] = 9; figures['Q'] = 10; figures['K'] = 11; figures['A'] = 12; scanf("%c\n", &deals); while (deals != '#') { player = players[deals]; fgets(line, 100, stdin); fgets(line + 52, 100, stdin); pc = line; //printf("line***%s***\n", pc); for (int run = 0; run < 13; run++) for (int i = 0; i < 4; i++, pc += 2) { code = codes[pc[0]] + figures[pc[1]]; hands[player = (player + 1) % 4][run] = code; //printf("%c%c = %d\n", pc[0], pc[1], code); } for (int i = 0; i < 4; i++) sort(hands[i], hands[i] + 13); printf("South player:\n"); print_hand(hands[0]); printf("West player:\n"); print_hand(hands[1]); printf("North player:\n"); print_hand(hands[2]); printf("East player:\n"); print_hand(hands[3]); scanf("%c\n", &deals); } return 0; }