Örneğimiz bir text kutusuna girilen cümlenin tersinin düzüne eşit olup olmadığını bulmaktadır. Örneğimiz için form üzerine bir adet label bir adet de text box ekliyoruz.

Kodumuz şu şekilde olacak:

Public Class Form1

Dim ln As Integer, yarisi As Integer, sayac As Integer

Dim yari As Single

Dim uz1 As String, uz2 As String

Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

sayac = 0

End Sub

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress

If e.KeyChar = Chr(13) Then

ln = 0

sayac = 0

yari = 0

yarisi = 0

uz1 = ""

uz2 = ""

ln = Len(TextBox1.Text)

yari = ln / 2

yarisi = CInt(yari)

For i = 0 To yarisi - 1

uz1 = Mid$(TextBox1.Text, i + 1, 1)

uz2 = Mid$(TextBox1.Text, ln - i, 1)

If uz1 = uz2 Then

sayac = sayac + 1

End If

Next i

If sayac = yarisi Then

lblmesaj.Text = "tersi duzune esit "

Else

lblmesaj.Text = "tersi duzune esit degil"

End If

End If

End Sub

End Class

Kodları kısaca açıklayalım:

 If e.KeyChar = Chr(13) Then cümlesi ile eğer basılan tuşun kodu 13 ise (enter tuşu) işlemimizin başlamasını sağlıyoruz.

Cümlemizin uzunluğunu 

ln = Len(TextBox1.Text)

komutları ile buluyoruz.

Cümlemizi tam ortasından ikiye bölmek için

yari = ln / 2

komutunu kullanıyoruz. Ondalıklı bir değer çıkabilir diye

yarisi = CInt(yari) komutu ile sayının tam kısmını buluyoruz.

For i = 0 To yarisi - 1 komutu ile cümlemizin başından yarısına kadar bir döngü kuruyoruz.

uz1 = Mid$(TextBox1.Text, i + 1, 1)

uz2 = Mid$(TextBox1.Text, ln - i, 1)

komut satırları ile cümlenin başından ve sonundan birer karakter alarak karşılaştırıyoruz.

If uz1 = uz2 Then

sayac = sayac + 1

End If

komut satırları ile karşılaştırılan karakterler birbirine eşitse sayacımızı bir arttırıyoruz.

If sayac = yarisi Then

lblmesaj.Text = "tersi duzune esit "

Else

lblmesaj.Text = "tersi duzune esit degil"

End If

komut satırları ile de cümlenin başından ve sonundan karşılaştırma yaparak yarısına kadar gelmişsek işlemimiz bitmiştir. Bu durumda cümlenin tersi düzüne eşittir.

Son olarak proje dosyamızın kod linkini vereyim:

http://www.volkanaktas.com/prgdosya/tersduz.rar

Etiketler : Etiket Yok
Kategoriler : VB.Net
Yorumlar : 0 Yorum Yorum Yaz

Yorumlar

Yorum Eklenmemiş...

Yorum Yaz

Adınız: *
E-Mail Adresiniz: *
Web Sitesi:
Yorum: *
Güvenlik Kodu: *
 
Arama
  Ara
Takvim
<September 2010>
SMTWTFS
2930311234
567891011
12131415161718
19202122232425
262728293012
3456789
Tag Bulutu