Beispiel #1
0
        public void Shuffle()
        {
            Cards newDeck = new Cards();

            Random sourceGen = new Random();


            int destCard = sourceGen.Next(52);
            int i        = 0;



            while (i < 52)

            {
                destCard = sourceGen.Next(52);


                if (!newDeck.Contains(GetCard(destCard)))
                {
                    newDeck.Add(CurrentDeck[destCard]);
                    i++;
                }
                else
                {
                    destCard = sourceGen.Next(52);

                    if (!newDeck.Contains(GetCard(destCard)))
                    {
                        newDeck.Add(CurrentDeck[destCard]);
                        i++;
                    }
                }
            }



            newDeck.CopyTo(CurrentDeck);
        }
Beispiel #2
0
        public void Shuffle()
        {
            Cards newDeck = new Cards();
            //bool[] assigned = new bool[52];
            Random sourceGen = new Random();

            //for (int i = 0; i < 52; i++)
            //{
            //    int destCard = 0;
            //    bool foundCard = false;

            //    while (foundCard == false)
            //    {
            //        destCard = sourceGen.Next(52);

            //        Debug.WriteLine(destCard);
            //        Debug.WriteLine(assigned[destCard]);

            //        if (assigned[destCard] == false)
            //        {
            //            foundCard = true;
            //        }
            //    }
            //    assigned[destCard] = true;
            //    newDeck[destCard] = cards[i];
            //}

            //for (int i = 0; i < 52; i++)
            //{
            int destCard = sourceGen.Next(52);
            int i        = 0;

            //newDeck[destCard] = cards[i];
            //destCard = sourceGen.Next(52);


            while (i < 52)

            {
                destCard = sourceGen.Next(52);


                if (!newDeck.Contains(GetCard(destCard)))
                {
                    newDeck.Add(cards[destCard]);
                    i++;
                }
                else
                {
                    destCard = sourceGen.Next(52);

                    if (!newDeck.Contains(GetCard(destCard)))
                    {
                        newDeck.Add(cards[destCard]);
                        i++;
                    }
                }
            }

            //}


            newDeck.CopyTo(cards);
        }