Visual Basic 6.0 Ders Notları

Preview:

DESCRIPTION

Anadolu Üniversitesi Endüstri Mühendisliği Bölümü. Visual Basic 6.0 Ders Notları. Program Kontrol ve Döngü Deyimleri, Operatörler. Kaynak: İhsan Karagülle, Zeydin Pala, Visual Basic 6.0, Türkmen Kitabevi, 1999, Beyazıt İstanbul,. Program Kontrol Deyimleri. VB’de kullanılan kontrol deyimleri : - PowerPoint PPT Presentation

Citation preview

1

Visual Basic 6.0Ders Notları

Anadolu ÜniversitesiEndüstri Mühendisliği Bölümü

Kaynak: İhsan Karagülle, Zeydin Pala, Visual Basic 6.0, Türkmen Kitabevi, 1999, Beyazıt İstanbul,

Program Kontrol ve Döngü Deyimleri, OperatörlerProgram Kontrol ve Döngü Deyimleri, Operatörler

2

Program Kontrol Deyimleri

• VB’de kullanılan kontrol deyimleri :– If … Then …– Select Case …– IFF– Choose– Switch

• Kontrol deyimleri ile belirli şartlar aranarak programın bir kısmının çalıştırılması sağlanır.

3

If Yapısı

• Bazı şartların gerçekleşmesi durumunda kodların çalıştırılmasına imkan veren bir yapıdır.

• Şartın gerçekleşmesi halinde Then deyiminden sonraki, aksi halde Else deyiminden sonraki satırlar işletilir.

• Else bloğu istenirse verilmeyebilir.• Ayrıca tek satırda şart yazılıyorsa End if deyimi

kullanılmaz.

If Şart ThenKomutlar

ElseKomutlar

End If

If Şart ThenKomutlar

ElseKomutlar

End If

4

Örnek

5

Örnek

6

Örnek

7

Select Case Yapısı

• Bir değişkenin aldığı bir çok değere göre ayrı komutların çalıştırılması gereken durumlar için Case yapısı kullanılır.

Select Case DeğişkenCase Durum1 :Komutlar Case Durum2, Durum3 :Komutlar Case Durum4 to Durum7 :Komutlar Case is < Durum8 :Komutlar Case is > Durum9 :Komutlar …Case Durum N :Komutlar Case Else: Komutlar

End Select

Select Case DeğişkenCase Durum1 :Komutlar Case Durum2, Durum3 :Komutlar Case Durum4 to Durum7 :Komutlar Case is < Durum8 :Komutlar Case is > Durum9 :Komutlar …Case Durum N :Komutlar Case Else: Komutlar

End Select

8

Örnek

9

IIF

• Bir değişkenin değeri iki durumdan birine göre değer alıyorsa if yapısı yerine IIF kullanılabilir.

IFF(şart;doğru ise; yanlış ise)IFF(şart;doğru ise; yanlış ise)

10

Choose Yapısı

• Bir değişkenin aldığı değer bir sayıya bağlı ise Choose yapısı kullanılır

Sonuç= Choose(Sayı, deger1, deger2, … , deger N)Sonuç= Choose(Sayı, deger1, deger2, … , deger N)

gun= Choose(GunNo,”Pa”, “Pt”,”Sa”,”Çar”, “Per”, “Cum”, “Ctesi”)gun= Choose(GunNo,”Pa”, “Pt”,”Sa”,”Çar”, “Per”, “Cum”, “Ctesi”)

1

5

11

Switch

• Switch fonksiyonunda birden fazla şartı aynı satırda kontrol etmek mümkündür.

Sonuç= Switch(şart1,deger1, şart2, deger2, … ,şartN, deger N)Sonuç= Switch(şart1,deger1, şart2, deger2, … ,şartN, deger N)

Dim nn=Val(InputBox(“Notunuz”))Print Switch(n>0 and n<40,”kotu”, n>=40 and n<60, “orta”, n>=60 “iyi”)

Dim nn=Val(InputBox(“Notunuz”))Print Switch(n>0 and n<40,”kotu”, n>=40 and n<60, “orta”, n>=60 “iyi”)

12

Döngü Deyimleri

• Belirli bir komut parçasını belirli şartlar gerçekleşinceye kadar defalarca çalışmasını sağlayan yapılardır.Çalışma Sayısı Belirli ise

- For … Next,

Diğer Durumda - While… Wend, - Do… Loop,

Döngüleri kullanılır.

13

For … Next

• For döngüsü sayacın “BaşlangıçDeğeri”nden başlayarak “BitişDeğeri”ne kadar birer artarak Next’e kadar olan komutları çalıştırır.

• Eğer sayacın birer birer değil de belirleyeceğimiz aralıklarla artıp azalmasını istiyorsanız step parametresinden sonra “Artım” miktarını yazmanız gerekir.

• Başlangıç değeri bitiş değerinden küçük ise döngüye hiç girilmeyecektir.

• Sayacın azalarak çalışması isteniyorsa, BaşlangıçDeğeri BitişDeğerinden büyük ve step’ten sonraki Artım değeri negatif sayı olmalıdır.

For sayaç= BaşangıçDeğeri to BitişDeğeri [Step Artım]Komutlar

Next

For sayaç= BaşangıçDeğeri to BitişDeğeri [Step Artım]Komutlar

Next

14

For …. Next Örneği

15

For …. Next Örneği

16

For …. Next Örneği

17

For Döngüsü Örneği

18

While-Wend ve Do-Loop Döngüleri

• Bir döngünün kaç defa çalışacağı önceden bilinmiyor ancak belirli şartlar sağlandığı sürece işlemleri tekrar etmesi isteniyor ise while döngüleri kullanılır.

While şart Komutlar

Wend

While şart Komutlar

Wend

Do While şart Komutlar

loop

Do While şart Komutlar

loop

DoKomutlar

loop While şart

DoKomutlar

loop While şart

Do Until şart Komutlar

loop

Do Until şart Komutlar

loop

DoKomutlar

loop Until şart

DoKomutlar

loop Until şart

Komutlar en az bir kez çalışırŞart sağlanırsa komutlar çalışır

19

While-Wend ve Do-Loop Döngüleri- Örnekler

20

Exit Do & Exit For İfadeleri

• Exit Do komutu Do-Loop, While Wend döngülerinde bazı şartlar sağlandığında döngüden çıkmak için kullanılır.

• Exit For For next döngüsünden çıkmak için kullanılır

21

Exit Sub, Exit Function, End

• Exit Sub ve Exit Function Alt programları sonlandırmak için kullanılır.

• End, Programı sonlandırmak için kullanılır.

22

With… End with

• Bir kontrole ait bir özellik değiştirilmek istendiğinde veya bir metod çağrıldığı durumlarda kontrol adının verilmesi gerekir,– Örneğin: Text1.left =0

• Herhangi bir kontrol elemanının birden fazla özelliğini değiştirmek ya da metodlarına ulaşmak için with … End with bloğu kolaylık sağlar

With kontrol_adı.özellik1= deger1.özellik2= deger2…

End With

With kontrol_adı.özellik1= deger1.özellik2= deger2…

End With

With text1.clear.text = “eskisehir”.height= 300.width = 1500

End With

With text1.clear.text = “eskisehir”.height= 300.width = 1500

End With

23

Operatörler

= Atama x=5

+ Toplama Print 20+5 25

- Çıkarma Print 10-5 5

* Çarpma Print 3*5 15

/ Bölme Print 9/2 4.5

\ Tam Bölme Print 9\2 4

& String toplama Print "Bayram" & "paşa" Bayrampaşa

^ Üst Print 4^2 16

Mod Bölmeden Kalan Print 5 Mod 2 1

And Ve Print 5 And 17 1 : 00101 And 10001= 00001

Or Veya Print 7 Or 17 23 (00111 Or 10001 = 10111)

Xor Xor Print 7 Xor 17 22 (00111 Xor 10001 = 10110)

Not Değil Print Not &H1 &HFFFE

Not 0000 0000 0000 0001 = 1111 1111 1111 1110

24

Üst ve Mod İşlemleri

Üst işlemlerinin özelliğinden dolayı ^operatörü yüksek dereceden kökleri bulmak için de kullanılır.

Mod işlemi bir sayının bir başka sayıya bölümünden kalanı verir.Bir sayı başka bir sayının tam katı ise o sayıya bölümünden kalan

sıfır olacaktır.Dim i, top As integer For i=1 to 100

top=top+iIf (i Mod 10) = 0 Then Print top

NextPrint “sonuç :” & top

Dim i, top As integer For i=1 to 100

top=top+iIf (i Mod 10) = 0 Then Print top

NextPrint “sonuç :” & top

3 81Print 81^(1/3) Print 81^(1/3)

25

Lojik İşlemler

• And, Or, Xor ve Not operatörleri Lojik operatörlerdir ve bit seviyesinde işlem yaparlar. Bu operatörlerin bit seviyesinde yaptıkları işlem tabloları şöyledir.

0 And 0 00 And 1 01 And 0 01 And 1 1

0 Or 0 00 Or 1 11 Or 0 11 Or 1 1

0 XOr 0 00 XOr 1 11 XOr 0 11 XOr 1 0

Not 0 1Not 1 0

26

Karşılaştırma İşlemleri

= EşitIf x=5 Then Print “5” Else “5 degil”

<> Eşit DeğilIf x<>5 Then Print “ 5 degil” Else “5”

< Küçük If x<5 Then Print “5 den küçük” Else “5 veya büyük”

> Büyük If x>5 Then Print “5 den büyük ” Else “5 veya küçük”

<= Küçük veya Eşit If x<=5 Then Print “5 veya küçük” Else “5 den büyük”

>= Büyük veya Eşit If x>=5 Then Print “5 veya büyük” Else “5 ten küçük”

27

Karşılaştırma İşlemleri

• Like operatörü ile stringler üzerinde daha detaylı karşılaştırma işlemleri yapılabilmektedir.

? Herhangi bir karakter If x Like “?abc” Then

vabc,

xabc,

Zabc

# Herhangi bir rakam If x Like “#abc” Then

1abc,

5abc,

9abc

* Bir veya daha fazla karakter

If x Like “*abc” Then

araabc,

deneabc,

a13abc

[aralık] Verilen aralıkta bir karakter

If x Like “[a-f]abc” Then

aabc,

eabc,

Fabc

[!aralık] Verilen aralık dışında bir karakter

If x Like “[!a-f]abc” Then gabc

Habc

28

İşlem Önceliği

• VB’de İşlem önceliği, her zaman parantez içi önce olmak üzere aşağıdaki gibidir.

Aritmetik >> Karşılaştırma>>Lojik

• Tabloda verilen Aritmetik, Karşılaştırma ve Lojik operatörlerin öncelikleri yukarıdan aşağıya doğru azalan şekildedir.

• Aynı önceliğe sahip operatörlerden öncelik soldan sağa doğru azalı

Aritmetik Karşılaştırma Lojik

^ = Not

Negatiflik (-) <> And

* , / < Or

\ > Xor

Mod <= Eqv

+, - >= Imp

& Like

is

Print 4+7*2-2/2^3*20 or (8+2)*4Print 4+7*2-2/2^3*20 or (8+2)*4

4+7*2-2/8 *20 or 10*4

4+14 -.25 *20 or 40

4+14 - 5 or 40

13 or 40