• 10-11-2012, 17:02:00
    #1
    Merhaba arkadaşlar,

    --

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace kart_oyunu
    {
    class Program
    {
    static void Main(string[] args)
    {
    string[] tip = { "Maça", "Kupa", "Karo", "Sinek" };
    string[] kart = { "A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K", };
    string[] deste = new string[52];

    //1
    int k = 0;
    for (int i = 0; i < tip.Length; i++)
    {
    for (int j = 0; j < kart.Length; j++)
    {
    deste[k]=tip[i] + " " + kart[j];
    k++;
    }
    }
    // kart karma kodları buraya gelecek.

    }
    }
    }

    Bu kartları nasıl karabilirim C#'ta?
    yardımcı olabilirseniz sevinirim, teşekkürler.
  • 10-11-2012, 17:20:23
    #2
    deste = deste.OrderBy(x=> Guid.NewGuid()).ToArray();
    kart karma kodları kısmına ekle bunu
  • 10-11-2012, 18:29:08
    #3
    Aslında random kodunu kullanabilirsiniz..

    http://www.csharpkitabi.com/tag/c-ko...gele-sayi-alma
  • 10-11-2012, 20:04:37
    #4
    c# abstract sınıfları bir oku derim. Öyle daha kolay bir yapı olur sanki
  • 14-11-2012, 21:04:59
    #5
    Kimlik doğrulama veya yönetimden onay bekliyor.
      
    
                Random rnd = new Random();
                for (int i = 0; i < 500; i++)
                {
                    int index1 = rnd.Next(52);
                    int index2 = rnd.Next(52);
                    Swap(index1, index2);
                }
    koduna bu kısmı ekleyeceksin. 500 yerine kaç defa karıştırmasını istiyorsan o sayıyı yazabilirsin.

    Swap fonksiyonun da şu şekilde olacak


            
    private void Swap( int a, int b)
            {
                string tmp = deste[a];
                deste[a] = deste[b];
                deste[b] = tmp;
            }