Şu anlık o kadar bilgim yok hocam. Teşekkürler.Random.Next(begin, end) // (end exclusive (son hariç))
oyuncular[0] = 1 ve oyuncular[4] = 9. Çünkü bilgisayarlar 0'dan başlayarak sayar.
Random.Next(3, 9) derseniz de [3, 4, 5, 6, 7, 8] arasından bir sayı sonuncu alırsınız. 9 önceden de bahsettiğim sebepten çıktıda görünmez.
Eğer bir oyuncu ve bir kart seçecekseniz. Oyuncular ve Kartlar adında 2 ayrı dizi oluşturup ikisinden de sıra ile birer eleman seçmeniz daha mantıklı olacaktır.
C#:// Main dışı static Random rand new Random(); readonly string[] oyuncular = ["ahmet", "mehmet", "ali", "veli"]; readonly string[] akislar = ["Kırmızı kart", "Gol", "Aut", "Penaltı"]; public static string oyunuSec() => oyuncular[rand.Next(oyuncular.length)]; public static string akisSec() => akislar[rand.Next(akislar.length)]; // Main içerisi string seciliOyuncu = oyuncuSec(); string seciliAkis = akisSec();
Tabi score vs tutacaksanız ayrı bir array'de tutmak yerine Oyuncu objesi yaratıp içerisine Score, isim gibi Attribute'lar ekleyebilirsiniz.
Böyle bir çözüm bıldum.
[CODE lang="csharp" title="Çözüm"]{
Random rastgele = new Random();
action = rastgele.Next(0,8);
} while (action % 2 != 0);[/CODE]
Son düzenleme: