1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
|
#include <iostream>
enum suit { diamond, club, heart, spade };
enum rank
{
two, three, four, five, six, seven, eight, nine,
ten, jack, queen, king, ace
};
char suit_name[][10] = {"diamonds", "clubs", "hearts", "spades"};
char rank_name[][10] =
{"two", "three", "four", "five", "six", "seven", "eight", "nine",
"ten", "jack", "queen", "king", "ace"
};
struct Card
{
int suit;
int rank;
Card(int aSuit, int aRank)
{
suit = aSuit;
rank = aRank;
}
int value()
{
return suit * 13 + rank;
}
void print()
{
std::cout
<< rank << '\t' << suit << '\t' << rank_name[rank]
<< " of " << suit_name[suit]
<< "\tvalue: " << value() << '\n';
}
};
int main()
{
// A COUPLE OF TRIAL CARDS
Card deal_1(diamond, ace);
deal_1.print();
Card deal_2(heart, ace);
deal_2.print();
Card deal_3(heart, king);
deal_3.print();
std::cout << '\n';
// SHOW A WHOLE DECK
Card temp(0,0);
for(int sut = diamond; sut <= spade; sut++)
{
temp.suit = sut;
for (int rnk = two; rnk <= ace; rnk++)
{
temp.rank = rnk;
temp.print();
}
std::cout << '\n';
}
return 0;
}
|