Sayısal Loto mantığını anlatmak gerekirse 49 sayı içerisinden 6 tane sayı seçilir ve seçilen tüm sayılar birbirinden farklıdır .
ihtiyacımız olan şeyler 1 BUTON ve 1 LİSTBOX Tasarımımızı yaptığımıza göre kodlarımıza başlayalım
ÖNEMLİ NOT : Dizi oluşturduğumuzda hata veriyorsa
using System.Collections;
Kütüphanesi Eklemelisiniz!!!
listBox1.Items.Clear(); Random rnd = new Random(); ArrayList sayi49 = new ArrayList(); ArrayList sayi6 = neode>Random sayı üretebilmek için rnd kullanıyoruz 49 ve 6 tane sayıları içerisinde barındırabilmek için sayi49 ve sayi6 olarak dizi tanımlıyoruz
for (int x = 1; x <= 6; x++) { int index = rnd.Next(0, sayi49.Count); sayi6.Add(sayi49[index]); sayi49.RemoveAt(index); }index adında bi değişken tanımlıyoruz ve bu değişken ile sayi49 içerisindeki eleman sayısı aralığında random sayı alıyoruz ve sayi6 ya seçilen random sayıyı atarak sayi49 içerisinden o sayıyı siliyoruz ki tekrardan o sayıyla karşılaşmayalım.
Dikkat edilmesi gerekenlerden en önemli yer sayi49 un içerisine 49 tane sayı yazdırıyoruz ve içerinden 6 tane sayı seçiyoruz bunu direk randomdan 6 sayı çekerek yaparsak aynı sayı gelme ihtimalleri var buggsuz en mantıklı yol budur..
sayi6.Sort(); for (int i = 0; i < 6; i++) { listBox1.Items.Add(sayi6[i].ToString()); }sayi6.sort komuduyla sayi6 dizisinin içerisindeki elemanları küçükten büyüğe doğru sıraladık
ve for döngüsüyle tüm elemanları yazdırarak programımızı bitirdik .
Kodların Bir Bütün Hali
listBox1.Items.Clear(); Random rnd = new Random(); ArrayList sayi49 = new ArrayList(); ArrayList sayi6 = new ArrayList(); for (int i = 1; i <= 49; i++) { sayi49.Add(i); } for (int x = 1; x <= 6; x++) { int index = rnd.Next(0, sayi49.Count); sayi6.Add(sayi49[index]); sayi49.RemoveAt(index); } sayi6.Sort(); for (int i = 0; i < 6; i++) { listBox1.Items.Add(sayi6[i].ToString()); }