public MyCard(char sign, string colour)
public MyCard(MyCard aCard)
this.sign = aCard.GetSign();
this.colour = aCard.GetColour();
public string GetColour()
public void SetSign(char aSign)
public void SetColour(string aColour)
{ this.colour = aColour; }
Console.WriteLine(this.sign + " " + this.colour);
public static void Main()
MyCard[] cards = new MyCard[10];
cards[0] = new MyCard('1', "green");
cards[1] = new MyCard('2', "green");
cards[2] = new MyCard('3', "red");
cards[3] = new MyCard('4', "blue");
cards[4] = new MyCard('5', "purple");
cards[5] = new MyCard('6', "red");
cards[6] = new MyCard('7', "red");
cards[7] = new MyCard('8', "yellow");
cards[8] = new MyCard('9', "blue");
cards[9] = new MyCard('Q', "green");
MyCard[] sortedCards = SortCardsArr(cards);
Console.WriteLine("After sorting:");
for(int i = 0; i < 10; i++)
sortedCards[i].PrintCard();
static void SwapElement(MyCard[] cards, int i, int j)
MyCard temp = new MyCard(cards[i]);
static MyCard[] SortCardsArr(MyCard[] cards)
color = cards[j].GetColour();
for(i = j; i < cards.Length; i++)
if(cards[i].GetColour() == color)
SwapElement(cards, i, j);
Console.WriteLine("j=" + j + " i=" + i);