Multiple Cards
Lição 6 de 6 do curso Gerador de Cartas de Baralho (Baseado em Texto) da Coddy.
Vamos mostrar vários cartões!
Desafio
MédioAgora, queremos adicionar suporte para múltiplas cartas, alterando a entrada de printCard de um inteiro (kind) e uma string (suit) para um array de inteiros (kinds) e um array de strings (suits), por exemplo:
A entrada - [1, 2, 3], ["heart", "club", "spade"] resultará em 3 cartas, Ás de Copas, Dois de Paus e Três de Espadas.
Você pode assumir que o comprimento dos arrays é o mesmo
Verifique os casos de teste para os formatos corretos, você deve adicionar um espaço simples entre as cartas.
Experimente você mesmo
#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");
}Todas as lições de Gerador de Cartas de Baralho (Baseado em Texto)
1Introduction
Introduction