Visual Basic 6.0 Döngü Deyimleri
Bu ay “Döngü Deyimleri” konusunu ele alıyor yazarımız.Kod tekrarı yapmadan programlar hazırlamak istiyorsanız faydalı bir yazı kaçırmayın!
Genel olarak döngü deyimleri, bir işlem(ler) grubunu çok sayıda tekrarlamak istediğimiz zaman kullanacağımız deyimlerdir. Böylece bu deyimler sayesinde kod tekrarı yapmamış olacağız bunun bize bir çok faydası vardır. Örneğin, bu sayede programı gereksiz kodlarlar şişirmemiş oluruz bu bize hata yakalama da ve programa hakim olmamamızda büyük kolaylık sağlar isterseniz konuyu fazla uzatmadan bu deyimler nelermiş incelemeye başlayalım.
For … Next Döngüsü
Bu döngü belirli bir ifadeyi istenilen sayıda tekrar etmeye yarar
For sayaç = başlangıç Tobitiş [Step adım_sayısı] [ifadeler] [Exit For] [ifadeler] Next [sayaç] |
1.) Private Sub Form_Activate() 2.) Form1.Caption = “Döngü Komutları” 3.) Dim Sayac AsInteger 4.) For Sayac = 1 To 20 End Sub |
Yukarda ki örnekte ekrana 20 tane “Merhaba Dünya” yazdık ve bunuda 5-6 satır kod ile başardık burada da döngü deyimlerinin bizi nasıl bir zahmetten kurtardığını rahatça görebiliriz bu arada kodların başında ki rakamları onları açıklarken kolaylık olsun diye yazdım bunlarda nerden çıktı diyerek kafanızı karıştırmasın. Programcığımızın 1. satırında bize Private Sub Form_Activate() ile End Sub arasında ki kod bloğunun form aktif olduğu anda işleme tabi tutulacağını anlatmaktadır 2. satırda ise Form1 isimli formun başlığının (Caption) “Döngü Komutları” olarak atandığını bildirmektedir. 3.satırda ise “sayac” isimli integer sayı tipinde bir değişken tanımlayarak bu tanımlanmış değişken ile 4. satırda 1 den 20 ye kadar bir döngü oluşturuyoruz. 5. satır ise bizim kod bloğumuzu oluşturuyor dolayısıyla da göngü içinde 20 kere tekrarlanıyor ve 6. satırdaki “Next sayac” ile de kod bloğumuzun sonlandığı noktayı belirtiyoruz.
Bu döngü komutuna bir örnek daha vererek bu kısmı geçeceğim.
Private Sub Command1_Click() Dim Sayi As Integer Dim Sayac As Byte, SayiMiktari As Byte SayiMiktari = Val(InputBox(“Sayi Miktarını Giriniz”)) End Sub |
Yukarda ki örneğimiz belirlenen belli bir sayıda ki sayıyı toplayarak bize sonucu bir mesaj kutusunda görüntüler.Eğer bu örneği VB derleyerek çalıştırırsanız akılda kalıcı olması bakımından daha faydalı olacaktır yalnız burada “Val” fonksiyonundan bahsetmek istiyorum bu fonksiyon string tipindeki verileri sayısal veriye çevirmek için kullanılır eğer bu fonksiyonu kullanmasaydık örneğin programınız bize 1+2+3 ün sonucunu 6 yerine 123 olarak verirdi bu küçük hatırlatmadan sonra bir sonra ki döngü deyimine geçiyorum
Do … Loop Döngüsü
Do [{While | Until} Koşul] [Komutlar] [Exit Do] [Komutlar] Loop yada diğer kullanım sekli ile; Do |
Bu döngü bir komut bloğunu koşul doğru ise yada koşul doğru olana kadar tekrarlanmasını sağlar. Burada dikkat edilmesi gereken önemli bir nokta var o ise koşul doğru olduğu sürece döngünün sonsuz bir çevrim içinde olacağıdır. Bu küçük hatırlatmadan sonra döngümüze geri dönelim Do … Loop çevriminin yukarıdan da anlaşılacağı üzerine iki kullanım şekli vardır bunlar birinde koşul hemen döngünün başında verilerek doğruluğu veya yanlışlığı kontrol edildikten sonra koutların icrasına karar verilir ikincisinde ise koşul döngünün sonunda verilerek koşulun değeri ne olursa olsun komutların bir kere icra etmesi sağlanır. Bunun dışında birde döngü ile birlikte While yada Until in kullanılması var While kullandığımız zaman komutlar koşul doğru iken yerine getirilir Until de ise koşul doğru olana kadar yani koşul yanlışsa yerine getirilir. Şimdi bu anlattıklarımız bir kaç örnek ile pekiştirelim.
Private Sub Command1_Click() Dim Kontrol As Boolean, Sayac As Byte Kontrol = True Do ‘ Dışarda ki Döngü. |
Yukarda ki örnekte içteki döngü 10 kere dıştaki döngü ise 1 kere işleme tabi tutulacaktır programcığımızdaki “Exit Do” komutu ise Do … Loop döngüsünden çıkmamıza yarar bu noktayı da belirtikten sonra size kalan bu kısmı dikkatlice inceleyip anlamaya çalışmaktır
While … Wend Döngüsü
While Koşul [Komutlar] Wend |
Do … Loop döngüsünün bir türevi olarak düşünebiliriz. Bu döngüde koşul doğru olduğu sürece While … Wend arasındaki komutlar icra edilir ve tekrar koşul kontrol edilir bu işlem koşul yanlış olana kadar devam eder
Private Sub Command1_Click() Dim Sayac AsByte Sayac = 0 While Sayac < 10 End Sub |
Yukarda ki örnekte command1 butonuna tıkladığımıza While … Wend Döngüsü Sayac ın 10 dan küçük olduğu sürece Sayac değişkenini bir artıracaktır Sayac 10 olduğunda ise While Sayac < 10 koşulu sağlanmayacağı içn döngüden çıkılacaktır ve MsgBox Sayac kodu işleme tabi tutulacaktır sayac değişkenide 10 olduğu için mesaj kutusunda 10 görüntülenecektir
Böylece Vb deki Döngü komutlarını bitirmiş olduk. Mutlu ve sağlıklı günler dileğiyle,
Sevgiyle Kalın.