One Dups Bilgisayar Programlamaya dair Her şeyi bulabileceğiniz , Özgün konulu bir sitedir.

Son Konular

Post Top Ad

Your Ad Spot

26 Mar 2018

C# Sayısal Loto


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());     
}

Sayfalar