lab3_task4

Run Settings
LanguageC
Language Version
Run Command
/** * @file main.c * @author Зайченко Д.І., гр. 515i * @date 04 квітня 2023 * @brief Лабораторна робота No 3 * * Використання масивів. Завдання 4 */ #include <stdio.h> #include <stdlib.h> #include <time.h> #define SUIT_NUM 4 #define RANK_NUM 13 #define PLAYERS 4 #define CARDS_NUMBER 6 int main() { int cards_poll[PLAYERS][CARDS_NUMBER]; int check[SUIT_NUM][RANK_NUM]; int rank, suit,trump,trump_number, * card_poll = &cards_poll[0][0]; const char rank_code[RANK_NUM] = { '2','3','4','5','6','7','8','9','t','j','q','k','a' }; const char suit_code[SUIT_NUM] = { 'c','d','h','s' }; srand(time(0)); //генерація і виведення козирної масті trump = rand() % 4; printf("trump = %c", suit_code[trump]); //цикл в якому генеруються карти та підраховується кількість коризів for (card_poll = &cards_poll[0][0]; card_poll- &cards_poll[0][0] < PLAYERS*CARDS_NUMBER; ) { //генерація рангу та масті карти rank = (rand() % 13); suit = (rand() % 4); //перевірка на повторення карти if (check[suit][rank] != 1) { check[suit][rank] = 1; //виведення руки гравця та скидання кількості козирів if ((card_poll - &cards_poll[0][0]) % 6 == 0) { trump_number = 0; printf("\nPlayer %d hand =", (card_poll - &cards_poll[0][0]) / 6 + 1); } //кількість козирів в руці +1 if (suit == trump) trump_number++; //виведення карти printf(" %c%c ",rank_code[rank],suit_code[suit]); //виведення кількості козирів if (((card_poll - &cards_poll[0][0])+1 ) % 6 == 0) printf("\nNumber of trumps in player %d hand = %d\n", (card_poll - &cards_poll[0][0]) / 6 + 1, trump_number); //генерація наступної карти card_poll++; } } }
Editor Settings
Theme
Key bindings
Full width
Lines