Şimdi Ara

C#'ta İskambil Destesini Dört Kişiye Dağıtan Programı Yaptım Fakat...

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
5
Cevap
0
Favori
358
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Ben aşağıdaki programı yaptım fakat aynı iskambil kartı birden fazla kişiye veriliyor (örn: hem birinci oyuncu oyuncuya hemde üçüncü oyuncuya maça as gidiyor). Bunu nasıl engelleyebilirim?


    Kaynak Kodları:


    Console.WriteLine("Kart dağıtma uygulamasına hoşgeldiniz.");

          Console.WriteLine("Kartlar Dağıtılsın'mı? (dağıt/dağıtma)");

          string cevap = Console.ReadLine();

          if (cevap == "dağıt")

          {

            string[] kartlar = {"Kupa As", "Kupa 2","Kupa 3","Kupa 4","Kupa 5","Kupa 6","Kupa 7","Kupa 8","Kupa 9","Kupa 10","Kupa Vale","Kupa Kız","Kupa Papaz",

            "Karo As", "Karo 2","Karo 3","Karo 4","Karo 5","Karo 6","Karo 7","Karo 8","Karo 9","Karo 10","Karo Vale","Karo Kız","Karo Papaz",

            "Sinek As", "Sinek 2","Sinek 3","Sinek 4","Sinek 5","Sinek 6","Sinek 7","Sinek 8","Sinek 9","Sinek 10","Sinek Vale","Sinek Kız","Sinek Papaz",

            "Maça As", "Maça 2","Maça 3","Maça 4","Maça 5","Maça 6","Maça 7","Maça 8","Maça 9","Maça 10","Maça Vale","Maça Kız","Maça Papaz"};


            for (int i = 0; i < 4; i++)

            {

              Console.WriteLine("-------------");

              Random rastgelesayi = new Random();

              for (int sayac = 0; sayac < 13; sayac++)

              {

                 

                int sayi1 = rastgelesayi.Next(0, kartlar.Length);

                Console.WriteLine(kartlar[sayi1]);

              }

            }

            Console.WriteLine("-------------");

            Console.ReadKey();

          }

          else if (cevap == "dağıtma")

          {

            Console.ReadKey();

          }

          else

          {

            Console.WriteLine("Yanlış komut girdiniz.");

          }




    < Bu mesaj bu kişi tarafından değiştirildi Tr0llZilla -- 30 Mayıs 2021; 20:2:11 >







  • bu mantıkla gidersen arraydan dağıtılan kartı silmen lazım yoksa aynı kart seçilebilir geçen sorduğun yerde yapmıştım bir tane ona bakmadın mı

  • Geçen attığınız link bende açılmadığı için bakamadım.

  • Kod

    Yığını:
    public class Program { internal enum KartTipleri { Sinek = 1, Maça = 2, Karo = 3, Kupa = 4 } internal enum Kartlar { İki = 2, Üç = 3, Dört = 4, Beş = 5, Altı = 6, Yedi = 7, Sekiz = 8, Dokuz = 9, On = 10, Vale = 11, Kız = 12, Papaz = 13, As = 14 } public class Kart { public string KartAdi { get; set; } } public static void Main() { var Deste = new List<Kart>(); foreach (KartTipleri kartTipleri in Enum.GetValues(typeof(KartTipleri))) { foreach (Kartlar kartlar in Enum.GetValues(typeof(Kartlar))) { Deste.Add(new Kart() { KartAdi = kartTipleri.ToString() + " " + kartlar.ToString() }); } } var rastgeledeste = Deste.OrderBy(_ => Guid.NewGuid()).ToList(); var oyuncu1 = rastgeledeste.Take(13); var oyuncu2 = rastgeledeste.Skip(13).Take(13); var oyuncu3 = rastgeledeste.Skip(26).Take(13); var oyuncu4 = rastgeledeste.Skip(39).Take(13); foreach (var kart in oyuncu1) { Console.Write(kart.KartAdi + "|"); } Console.WriteLine(); foreach (var kart in oyuncu2) { Console.Write(kart.KartAdi + "|"); } Console.WriteLine(); foreach (var kart in oyuncu3) { Console.Write(kart.KartAdi + "|"); } Console.WriteLine(); foreach (var kart in oyuncu4) { Console.Write(kart.KartAdi + "|"); } } }



    < Bu mesaj bu kişi tarafından değiştirildi Gökşen PASLI -- 30 Mayıs 2021; 21:48:11 >




  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.