none
turnuva için takım kurası RRS feed

  • Soru

  • bilgisayar hocamdan bi ödev aldım

    turnuva için takım kurası yapmam gerekiyo

    random ile takım atıyom ama aynı takımlar gelebiliyo,bunu nasıl bi döngüyle engelleyebilirim?

    9 Nisan 2013 Salı 07:54

Yanıtlar

Tüm Yanıtlar

  • List<Takım> _takımlar; //takımları bu listeye doldur.
    List<List<Takım>> _maçlar = new List<List<Takım>>();
    
    while(_takımlar.Count>1)
    {
       var t1 = _takımlar.OrderBy(p=>Guid.NewGuid()).Take(1).Single();
    _takımlar.Remove(t1); var t2 = _takımlar.OrderBy(p=>Guid.NewGuid()).Take(1).Single(); _takımlar.Remove(t2); var _maç = new List<Takım>(); _maç.Add(t1); _maç.Add(t2); _maçlar.Add(_maç); }

    Gibi bi algoritma kurdum, bi dene istersen.



    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC



    9 Nisan 2013 Salı 08:17
    Moderatör
  • yok abi yemedi
    9 Nisan 2013 Salı 10:40
  • valla ben yedirdim güzelde çalışmakta...

    http://social.msdn.microsoft.com/Forums/getfile/269251


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC


    9 Nisan 2013 Salı 10:54
    Moderatör
  • Önay bey'in verdiği örnekte rasgele çok güzel ve kolayca sıralanmış. (OrderBy(p=>Guid.NewGuid()) ifadesi ile) Rasgele sıralandıktan sonra, takımları sırayla ikişek ikişer alarak bile kurayı tamamlayabilirsiniz. Sonuçta üst üste rasgele karıştırmaya gerek yok. 

    Burak SARICA

    9 Nisan 2013 Salı 12:17
  • Önay bey'in verdiği örnekte rasgele çok güzel ve kolayca sıralanmış. (OrderBy(p=>Guid.NewGuid()) ifadesi ile) Rasgele sıralandıktan sonra, takımları sırayla ikişek ikişer alarak bile kurayı tamamlayabilirsiniz. Sonuçta üst üste rasgele karıştırmaya gerek yok. 

    Burak SARICA

    Evet çok doğru, kod bu şekilde biraz daha kısalıp hızlandırılır.

    while(_takımlar.Count>1)
    {
       var t = _takımlar.OrderBy(p=>Guid.NewGuid()).Take(2).ToList();
       _takımlar.Remove(t[0]);
       _takımlar.Remove(t[1]);
       _maçlar.Add(t);
    }


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC

    9 Nisan 2013 Salı 12:27
    Moderatör
  • önay abi mail attımda bi mailine bakabilir misin
    9 Nisan 2013 Salı 13:29
  • bunu web uygulamasına ne şekilde aktarıcam ?
    10 Nisan 2013 Çarşamba 12:24