Sayisal Loto Sayı Üretme Aracı


Uzun zamandan sonra yazmaya vakit bulabildim. Bu sefer de ufak bir Sayısal loto aracı yaptım ve ayrıntılarıyla burada paylaşacağım. Ayrıca resimde gördüğünüz üzere titret butonu da MSN de kullandığımız titreşime benzetmeye çalıştım tahmin sırasında şansınızı etkilemek için 😉 Çok konuşmadan anlatıma geçiyorum.



Bu uygulamada 6 adet label ve 2 adet de buton kullandım. Kodlara geçmeden önce ekranın tasarımını yapıp label larin özelliklerinden Font ve BorderStyle‘i ile görünümü biraz daha düzelttim. İsimlerini de lblSayi0 …. lblSayi5 şeklinde atadım. Artık kodlara geçebiliriz.

Sayısal loto butonunun click event’i için kodlar ;

button1.Enabled = false;
Random rastgele = new Random();
for (int iLoop = 0; iLoop < 6; iLoop++)
{
for (int jLoop = 0; jLoop < 30; jLoop++)
{
switch (iLoop)
{
case 0:
lblSayi0.Text = rastgele.Next(0, 49).ToString();
break;
case 1:
lblSayi1.Text = rastgele.Next(0, 49).ToString();
break;
case 2:
lblSayi2.Text = rastgele.Next(0, 49).ToString();
break;
case 3:
lblSayi3.Text = rastgele.Next(0, 49).ToString();
break;
case 4:
lblSayi4.Text = rastgele.Next(0, 49).ToString();
break;
case 5:
lblSayi5.Text = rastgele.Next(0, 49).ToString();
break;
}
Application.DoEvents();
System.Threading.Thread.Sleep(15);
}
}

Titret butonumuzun click event’i için de şunları yazıyoruz ;

for(int iLoop = 0; iLoop < 20; iLoop++)
{
this.Left += 5;
this.Top -= 8;
System.Threading.Thread.Sleep(5);
this.Left -= 5;
this.Top += 8;
}

Yada farklı bir yol ile şu şekilde yazabiliriz;

int YerX = this.Left;
int YerY = this.Top;
Random rdm = new Random();
for (int iLoop = 0; iLoop < 20; iLoop++)
{
this.Left += rdm.Next(-12, 12);
this.Top += rdm.Next(-12, 12);
this.Left = YerX;
this.Top = YerY;
System.Threading.Thread.Sleep(10);
}

Burada Random nesnesinden daha önce bahsetmiştik. Bahsetmediklerimizden biri  System.Threading.Thread.Sleep(); işlemcinin parantez içresini yazılan ms(milisaniye) miktarı kadar uyutulması yani işlem yapmasını engellemek oluyor. Bunu yazmamızın nedenini, o kodu kaldırıp denerseniz farkı daha rahat anlarsınız, sayıların döndüğünü görebilmek yani aradaki sayıları atlamaz.Normalde işlemci fazla işlem yapmamak adına aradaki işlemleri atlayıp son işlemi yapar bizde arada geçen sayıları görmeyiz. Bir de Application.DoEvents() bu da işlemi gerçekleştirmesi için bir komuttur. Ayrıca this geçen kodlar da formu temsil eder. Yani formun kendisidir. Aklınıza takılan bir şey olursa elimden geldiğince cevaplayabilirim…

Kaynak kodunu buradan indirebilirsiniz :

http://rapidshare.com/files/335330561/SayisalLotoTahminAraci.rar

10 comments on “Sayisal Loto Sayı Üretme Aracı

    • Tam olarak nasıl bir uygulama yada bilgi istiyorsanız belirtin, ben de ona göre ekleyebilirim…

    • Evet ama zaten örnek basit olsun diye o şekilde yapmıştım, üzerinde çok da düşünmeden yapmıştım, fırsat bulursam dediğiniz gibi yapıp buraya onun kodunu da eklerim.

  1. Kardes aynen böyle random sayılar üretsin ama aynı sayıyı bir daha üretmesin.Böyle bir şey yapabilirmiyiz?.teşekkürler.

    • Bir dizi oluşturursun, rastgele sayıları oluşturdukdan sonra dizinin içerisinde aynı olmama koşulu ile kontrol eder aynı değilse diziye atarsın. Sonuçta birbirinden farklı rastgele sayı bulunduran bir dizi oluşturursun…

  2. MERHABA BIR PROJEM VAR AMA BU DERSI PEK ANLAMIYORUM PROJE SU
    4İŞLEMLİ BİR OYUN
    BUTONA BASILINCA OYUN BASLICAK
    VE SORU GELCEK ORNEGIN 6+6 ?
    VE SECENEKLER GELICEK 4 . 8 .23.12 BEN 12 DEDIGIM ZAMAN DIER SORUYA GECICEK VE HER SORUDA 10 SANIYE OLUCAK
    BOYLE BOYLE 4 ISLEMI SORUCAK VE OYUN 5 LEVELDE BITCEK
    HER SORU 10 PUAN 10 SORUDA BITICEK OYUN
    SORU BILINMESSE ZAMAN BITINCE TEKRAR SORCAUK YARDIM EDIN LUTFEN 😦

Yorum bırakın