Menu
Coddy logo textTech

Più carte

Lezione 6 di 6 del corso Generatore testuale di carte da gioco di Coddy.

Mostriamo più carte!

challenge icon

Sfida

Medio

Ora vogliamo aggiungere il supporto per più carte: cambia l'input di printCard da intero (tipo) e stringa (seme) ad array di interi (tipi) e array di stringhe (semi), ad esempio:

L'input - [1, 2, 3], ["heart", "club", "spade"] darà come risultato 3 carte: Asso di cuori, Due di fiori e Tre di picche.

Puoi presumere che gli array abbiano la stessa lunghezza

Controlla i casi di test per i formati corretti; devi aggiungere un singolo spazio tra le carte.

Provalo tu

#include <stdio.h>
#include <string.h>

void printCard(int kind, char* suit) {
    char* suitSymbol = " ";
    if (strcmp(suit, "club") == 0) suitSymbol = "♣";
    else if (strcmp(suit, "diamond") == 0) suitSymbol = "♦";
    else if (strcmp(suit, "heart") == 0) suitSymbol = "♥";
    else if (strcmp(suit, "spade") == 0) suitSymbol = "♠";

    char kindBuf[4] = " ";
    if (kind == 1) strcpy(kindBuf, "A");
    else if (kind >= 2 && kind <= 10) sprintf(kindBuf, "%d", kind);
    else if (kind == 11) strcpy(kindBuf, "J");
    else if (kind == 12) strcpy(kindBuf, "Q");
    else if (kind == 13) strcpy(kindBuf, "K");

    printf("╔═════════╗\n");
    if (kind == 10) printf("║ 10      ║\n");
    else printf("║ %s       ║\n", kindBuf);
    printf("║         ║\n");
    printf("║         ║\n");
    printf("║    %s    ║\n", suitSymbol);
    printf("║         ║\n");
    printf("║         ║\n");
    if (kind == 10) printf("║      10 ║\n");
    else printf("║       %s ║\n", kindBuf);
    printf("╚═════════╝\n");
}

Tutte le lezioni di Generatore testuale di carte da gioco

Esercitati da solo: Compilatore C online