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.
Şu anlık o kadar bilgim yok hocam. Teşekkürler.
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]