මෙම ප්රශ්නය " C # පියවරෙන් පියවර 2013 " හි 10 වන පරිච්ඡේදයේ දැක්වේ.
කතුවරයා ගණන් ගැනීමේ යුගලයක් හරහා පුනරාවර්තනය කිරීම සඳහා ද්විත්ව ෆෝ-ලූප් භාවිතා කරයි (සම්පූර්ණ කාඩ්පත් තට්ටුවක් නිර්මාණය කිරීමට):
class Pack
{
public const int NumSuits = 4;
public const int CardsPerSuit = 13;
private PlayingCard[,] cardPack;
public Pack()
{
this.cardPack = new PlayingCard[NumSuits, CardsPerSuit];
for (Suit suit = Suit.Clubs; suit <= Suit.Spades; suit++)
{
for (Value value = Value.Two; value <= Value.Ace; value++)
{
cardPack[(int)suit, (int)value] = new PlayingCard(suit, value);
}
}
}
}
මෙම අවස්ථාවේ දී, Suit
සහ Value
දෙකම ගණනය කිරීම් වේ:
enum Suit { Clubs, Diamonds, Hearts, Spades }
enum Value { Two, Three, Four, Five, Six, Seven, Eight, Nine, Ten, Jack, Queen, King, Ace}
හා PlayingCard
එය අර්ථ සහිත කාඩ් වස්තුවක් Suit
හා Value
:
class PlayingCard
{
private readonly Suit suit;
private readonly Value value;
public PlayingCard(Suit s, Value v)
{
this.suit = s;
this.value = v;
}
}