SONSUZ DÖNGÜNDE KACINMAK
Do döngülerin katı dogaları geregi sınama kosullarınızı her döngünün gercek bir cıkıs noktası olacak bicimde tasarlamanızın büyük bir önemi vardır.Bir döngü sınaması hiç bir zaman False degerini vermezse bu durumda döngü bitmeksizin kendisini calıstırmaya devam edecek be programınız girdi verilerine bir daha yanıt vermeyecektir.Şimdi asagıdaki ornege bir göz atalım..
Do

Sayı = İnputBox ('' Karesini almak için bir sayı girin.Çıkmak için -1 yazın'')
Sayı = Sayı * Sayı
Print Sayı
Loop While Sayı >= 0
Bu döngüde kullanıcı programa art arda sayılar girer ve program sayıların karesini alarak form üzerinde görüntüler ne yaaazık ki kullanıcı işini bitirdiginde programcan cıkamaz çünkü programda bildirilen cıkma kosulu calısmaz.Kullanıcı -1 sayısını girdiginde program bu sayıyı kendisiyle çarpar ve sayı degiskenine 1 degerini atar.
Bu sorun baska bir cıkıs kosulu yerleştirilerek çözülebilir. Do döngülerini yazarken sonsuz döngüleri izlemek ogretici olabilir.Neyse ki programlarınızı bastan sona sınarsanız bu gibi sonsuz döngüleri izlemek ogretici olabilir.

Asagıdaki alıstırma Fahrenheit cinsinden usu degerini Celsius cinsine cevirmek için bir Do dögüsünün kullanmasını gösteriyor.BVu basi program kullanıcıdan ınputBox işlevini kullanarak programa veri girmesini ister sonra da ısı derecesini çevirerek çıktıyı bir ileti kutusunda görüntüler.Ayrıca bu programda Visible özelligi False olarak ayarlayıp bir formun gizlenmesini de görebilirsiniz...
Bir Do döngüsü Kullanarak ısı Derecelerini çevirin
1.File menüsündeki Project komutunu ve Ok'ı Tıklayın.
Visual basic programlama ortamında yeni bir form açar
2.Properties penceresini açık ve formun Visible özelligini False Yapın..

Bir Formun visible özelligini false olarak ayarladıgınız zaman programı calıstırdıgınızda visual basic formu gizler.Yani program calısıtında bütük kullanıcı arabirimi görünmez olur hiçbir nes görüntülenemez.
Büyük bir olasıkla buna sık sık gereksinim duyulmaz ama programın bir kısmının ya da tamamının arka planda calısması istediginde oldukca kullanıslı bir tekniktir.Bu program yanlızca ısı derecesini Fahrenheit cinisnden Alıp Celsius cinisnden verdigi için formu gizlemek iyi bir yaklasımdır.Bu durumda girdiyi İnputBox işlevini kulalnarak girelebilir Çıktı ya MsgBox işlevi aracılıgıyla görebilirsiniz..

3.Form üzerine çift tıklayın
Code penceresinde Form Load olay yordamı açılır Burası programdaki kodun tamamının yerleştirilecegi yerdir.
Prompt = "Fahrenheit değeri girin."
Do
FTemp = InputBox(Prompt, "Fahrenheit'tan Celsius'a")
If FTemp <> "" Then
Celsius = Int((FTemp + 40) * 5 / 9 - 40)
MsgBox (Celsius), , "Celsius cinsinden ısı"
End If
Loop While FTemp <> ""
End

Bu Dkouz Satır programın hesaplamalarını yapar.Birinci satır promt degiskenine girdi kutusnda bir yönerge görüntülemek için kullanılıcak bir metin dizilim atar.
Dön döngüsü sürekli olarak kullanıcıdan bir Fahrenheit girmesini ister verilen sayıyı Celsiusa çevirir ve MsgBox işlevini kullanarak çıkıtyı ekranda görüntüler.Kullanıcısı Ftemp degiskenine boş ya da geçersiz bir deger gönderen iptal dugmesini tııklayana kadar döngü bu calısmayı yineler.Döngü bu gecersiz degeri döngünün sonundaki While kosul sınamasını kullanarak denetler
Son olarak Celsius = Int ( Ftemp + 40 ) * 5 / 9-40 )
Program bildirisi aracılıgıyla fahrenheit cinsinden gerilen ısı degeri celsiuasa çevrilir.Bu bildiri starndart bir çeviri formulu kullanır ancak celsius degiskenine ondalık hanesi olmayan bir deger göndermek için Int işlevinden de yaralanmaktadır.Yani elde edilen sayıda noktanın sagıdan kalan deger göz ardı edilir .) Degerin bu sekilde yuvarlanması sonucun kesin olmasını engellemekle birlikte ornegi 70 derece Fahrenheit'ın karsılıgı olan 21.1111111111111 Celcius derecesi gibi uzun kesirili okunması zor degerlerden kacınılmasını da saglamıs olur
Şimdi programı start dugmesine basın
Program calısmaya baslar Ve ınputbox işlevi kullanıcıdan bir FahrenHeit degeri girmesini ister Form gizlenmis durumdadır.Ekranınız asagıdaki gibi görünmelidir..
32 Degerini girin Ve oki tıklayın.
Asagıdaki ileti kutusnda goruldugu gibi 32 Fahrenheit degeri 0 Celsius degerine çevrilir..
Tamama tıklayın.Girdi kutusuna 72 yazın ve Oki tıklayın
72 Fahrenheti derecesi 22 celsius derecesine çevrilir
Tamamı tıkladıktan sonra girdi kutusndaki Cancel dugmesini tıklayarak programdan cıkın
Program kapanır ve programalama ortamı ekrana gelir.