18 Ekim 2011 Salı

Labirent Oyunu

PROFESYONEL YAZILIM MÜHENDİSLİĞİ UYGULAMALARI DERSİ

BASİT BİR LABİRENT OYUNU




KODLAR

Public Class frmGame
    Dim i As Integer
    Dim Basla As Boolean = False
    Dim gecensure As Integer = 0
____________________________________________________________________ 
Private Sub Form1_MouseMove(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseMove
        If Basla = True Then
            MsgBox("Kaybettiniz")
            Basla = False
            btnBitir.Visible = False
            Sure.Stop()
        End If
    End Sub

16 Ekim 2011 Pazar

Hanoi Kuleleri Oyunu

HANOİ KULELERİ OYUNU



Kodlar : 


Imports DevExpress.XtraEditors


Public Class frmOyun
    Dim BaslangicZamani As Date
    Dim GeceZaman As Integer
    Dim tst As Integer = 0
    Dim Tasi As Boolean = False
    Dim x, y As Integer
    Dim Taslar(10) As PictureBox
    Dim Uzaklik As Integer
    Dim SeciliNesne As PictureBox
    Dim K1(10) As PictureBox
    Dim K2(10) As PictureBox
    Dim K3(10) As PictureBox
    Dim Ka1, Ka2, Ka3 As Integer
    Dim EskiNokta As Point
    Dim AdimSayisi As Integer = 0


    Sub YeniOyun()
        For i As Integer = 0 To 3
            Dim btn As New PictureBox
            btn.Width = 130 - (i * 20)
            btn.Height = 25
            btn.Top = 500 - (30 * i)
            btn.Left = 50 + (i * 10)
            Taslar(i) = btn
            K1(i) = btn
            Ka1 += 1
            btn.BringToFront()
            'btn.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.Office2003
            btn.Image = My.Resources.HanoiTas1
            btn.SizeMode = PictureBoxSizeMode.StretchImage
            'btn.Text = "Taş " & i + 1
            AddHandler btn.MouseMove, AddressOf MouseHareketi
            Me.Controls.Add(btn)
            PicBaslik.SendToBack()
            PictureBox3.SendToBack() : PictureBox4.SendToBack() : PictureBox5.SendToBack()
            Kule1.SendToBack()
            Kule2.SendToBack()
            Kule3.SendToBack()
            PictureBox2.SendToBack()
        Next
        BaslangicZamani = Now
        Zaman.Start()
    End Sub

15 Ekim 2011 Cumartesi

Sql Serverda ISNULL Kullanımı


Sql de 0/0 yada x/0  gibi hesaplamalar sorgumuzun hata fırlatmasına sebebiyet vermektedir. Bunu bölen kısmın 0 olup olmama durumunu CASE WHEN yapısıyla yada en kötü ihtimal IF THEN bloğuyla tespit edip önlememiz muhtemeldir.
Ama ben size bunun daha basit ve daha performanslı bir yöntemini söyleyeyim;
SELECT ISNULL(SAYI1/NULLIF(SAYI2,0),0) FROM TABLOADIMIZ


 nullif fonksiyonu parametre olarak aldığı iki parametre eşit değerde olduğu taktirde  null geri döndürür. Eşit olmama değerinde ise birinci parametreyi geri döndürür. Yukarıda yer alan ifadede ise bolen kolonu 0 a eşit ise fonksiyon null döndürecektir.Bu null değeride en baştaki isnull ifadesiyle 0 olarak geri dönecektir.

NullIf işe yarayan bir fonksiyona benziyor. Aklınızda bulunsun.

Alıntıdır...