MBFORCE FORUM Ana Sayfa
Forum Anasayfası Forum Anasayfası > YAZILIM GELİŞTİRME > YAZILIM GELİŞTİRME > VISUAL BASIC 6
  Aktif Konular Aktif Konular
  SSS SSS  Forumu Ara   Kayıt Ol Kayıt Ol  Giriş Giriş

Visual Basic'te Program Kontrol deyimleri

 Yanıt Yaz Yanıt Yaz
Yazar
Mesaj
  Konu Arama Konu Arama  Konu Seçenekleri Konu Seçenekleri
bersin038 Açılır Kutu Gör
MBFORCE Konu Moderatörü
MBFORCE Konu Moderatörü
Simge

Kayıt Tarihi: 20/Mart/2006
Aktif Durum: Aktif Değil
Gönderilenler: 607

Aktiflik
58%
Seviye
58%
Deneyim
60%

Mesaj Sayısı: 607
Rep Puanı: 976

 Tesekkur Et   Alıntı bersin038 Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Konu: Visual Basic'te Program Kontrol deyimleri
    Gönderim Zamanı: 07/Ocak/2007 Saat 23:31

Kontrol Deyimleri :

- If Koşul Then ... Else(if) ... End if
- IIF
- Select ... Case


If Koşul Then ... Else(if) ... End if

Dim Sayi As Integer
Sayi = Val(InputBox("Bir Sayı Giriniz"))

If Sayi < 100 Then
MsgBox "Girdiğiniz Sayı 100'den Küçük" '1.kısım
Else
MsgBox "Girdiğiniz Sayı 100'den Büyük" '2.kısım
End If

Yukarda ki programla kullanıcıdan bir sayı girilmesi isteniyor ve "Val" fonksiyonu ile sayısal değere çevriliyor eğer bunu "Val" ile sayısal değere çevirmezsek programımız bunu bir string değer olarak kabul edecek ve programımız doğru çalışmayacaktı mesela 10+11 işleminin sonucunu bize 1011 diye söyleyecekti bu küçük hatırlatmayı da yaptıktan sonra programımızın geri kalanını açıklamaya devam edelim. Daha sonra sayı kontrol ediliyor eğer koşul doğru ise 1.kısım yanlış ise 2.kısım işleme tabi tutuluyor yalnız yukarda ki programda bir hata var o da kullanıcı giriş kutusuna 100 değerini girdiğinde 100<100 işleminin geri dönen sonucu "False" olduğu için program ikinci kısmı işleme tabi tutacaktır ve bize girdiğimiz 100 değerinin 100 den büyük olduğunu söyleyecektir. Programın doğrusu ise aşağıdadır

Dim Sayi As Integer
Sayi = Val(InputBox("Bir Sayı Giriniz"))

If Sayi < 100 Then
MsgBox "Girdiğiniz Sayı 100'den Küçük"
ElseIf Sayi = 100 Then
MsgBox "Girdiğiniz Sayı 100'e eşit"
ElseIf Sayi > 100 Then
MsgBox "Girdiğiniz Sayı 100'den Büyük"
End If

Bu örnek sayesinde de "ElseIf" 'in nasıl kullanıldığını görmüş olduk. İsterseniz şimdide mantıksal operatörleri kullanarak bir kod yazalım

Dim Sayi1, Sayi2 As Integer
Sayi1 = Val(InputBox("Birinci Sayıyı Giriniz"))
Sayi2 = Val(InputBox("İkinci Sayıyı Giriniz"))

If Sayi1 < 100 And Sayi2 < 100 Then
MsgBox "Girdiğiniz iki sayıda 100'den Küçük"
ElseIf Sayi1 < 100 Or Sayi2 < 100 Then
MsgBox "Girdiğiniz iki sayıdan biri 100 den küçük"
ElseIf Sayi1 > 100 And Sayi2 > 100 Then
MsgBox "Girdiğiniz iki sayıda 100'den Büyük"
ElseIf Sayi1 > 100 Or Sayi2 > 100 Then
MsgBox "Girdiğiniz iki sayıdan biri 100 den Büyük"
ElseIf Sayi1 = 100 And Sayi2 = 100 Then
MsgBox "Girdiğiniz iki sayıda 100'e eşit"
ElseIf Sayi1 = 100 Or Sayi2 = 100 Then
MsgBox "Girdiğiniz iki sayıdan biri 100'e eşit"
End If

Yukardaki kodları inceleyerek mantıksal operatörleri nasıl kullanmanız gerektiği hakkında fikir edinebilirsiniz bunları visual basic de yazıp derlerseniz sizin için daha faydalı bir hal almış olur

IIF

IIF fonksiyonu aslında Ağabeyi "IF" in daha kolay kullanışlı bir şeklidir ama tabiki ağabeyi kadar etkin bir kullanım alanı yoktur kullanım şekli ise,

Dim Deger As Byte
Dim Sonuc As String
Deger = 5
Sonuc = IIf(Deger = 5, "başarılı", "başarısız")
MsgBox Sonuc

Yukarda ki örnekten de anlaşıldığı gibi "Deger" değişkeninin 5 'e eşit olması durumda "Sonuc" değişkeni "başarılı" değil ise "başarısız" değerini alacaktır.

Select ... Case

Bu yapı çoğu zaman çok kullanılışlıdır çünki bizi birçok if else deyimlerini kullanmaktan kurtarır

Dim Sayi As Integer
Sayi = Val(InputBox("Bir Sayı Giriniz"))

Select Case Sayi
Case Is < 100
MsgBox "Girdiğiniz Sayı 100'den Küçük"
Case 100
MsgBox "Girdiğiniz Sayı 100'e eşit"
Case Is > 100
MsgBox "Girdiğiniz Sayı 100'den Büyük"
End Select Yukarda da görüldüğü gibi "select case" kullanımı bazen "if then else" deyiminden daha kullanışlı olabiliyor.
Gizli Alan :


Düzenleyen bersin038 - 07/Ocak/2007 Saat 23:32
Tesekkür Botu


Grup : Tesekkür Botu

Nereden : forum.mbforce.com
Mesaj Sayısı : N / A

sezgin35,
Yukarı Dön
 Yanıt Yaz Yanıt Yaz

Forum Atla Forum İzinleri Açılır Kutu Gör



Bu Sayfa 0,500 Saniyede Yüklendi.
[REKLAMI KAPAT X]