DİZİLERResimli Anlatım
Dizi, bellekte aynı isim altında toplamış değişkenler kumesine verilen isimdir. Dizinin kullanım alanlarına gelince ise, aynı ture ait bilgileri bellekte tutmak istediğimizde orneğin bir veri gurubunu sıralamak istediğimizde ya da verilere ait bazı istatiksel bilgilerin hesaplanmasında bize yardımcı olur. VB 'de diziler;
DiziAdi(ElemanSayisi)
Şeklinde gosterilir. Bir ornek verecek olursak
Sayilar(20)
Ucgen(2)
Kare(3)
Yukarda ki orneklerde Sayilar isminde 0 dan 20 ye kadar toplam 21 elemanlı bir dizi tanımlanmıştır.
VB 'de iki farklı dizi turu vardır bunlar;
1.) Statik Diziler:
Bu tip dizilerde dizinin eleman sayısı onceden belirlenir ve eleman sayısı sabittir. Orneğin programımızda Dim Sayilar(20) as Integer diye bir kod yazarsanız projenizde toplam 21 elamanlı ve sayısal bir veri turunu tutacak bir dizi tanımlamış olursunuz. Eğer dizimizin 20 elamanlı yani Sayilar(1) 'den başlamasını istiyorsak Form 'un veya Modulun General/Declarations kısmına Option Base 1 deyimini kullanmamız gerekecekti Option Base 0 ise dizinin ilk elemanının 0 'dan başlayacağını bildirir ki zaten bu da standart(default) bicimidir dolaysıyla kullanmaya gerek yoktur. Bu arada kucuk birde not vermek gerekirse Option Base deyimi VB 6.0 sonrasında bulunmayacak yani butun diziler 0 'dan başlayacak onun icin bu deyimi kullanıp alışkanlık yaratmaya hic gerek yok.
2.) Dinamik Diziler:
Bu tip dizilerde ise dizinin eleman sayısını program akışı icerisinde kontrol edebiliyoruz bunu ise diziyi Dim Sayilar() as Integer şeklinde dizinin eleman sayısı hakkında herhangi bir değer vermeden belirttikten sonra ReDim Sayilar(10) as Integer şeklinde dizinin eleman sayısını program akışı esnasında tanımlıyoruz. Ancak diziyi yeniden boyutlandırırken unutulmaması gereken nokta dizinin icindeki verilerin silineceğidir. Eğer verilerin silinmemesini istiyorsak diziyi yeninden boyutlandırırken ReDim Preserve Sayilar(10) As Integer şeklinde belirtmemiz gerekir.Şimdi buraya kadar oğrendiklerimizi bir ornekle pekiştirelim.
Ornek 1: Girilen 10 tane sayının toplamını ve ortalamasını veren ornek program

Yukarda ki ornekte bilmediğimiz hic bir komut olmadığı icin programın satır satır acıklamasını yapmayacağım onun yerine sadece ekran goruntulerini vereceğim

Yukarda ki resimlerden de anlaşılacağı uzere 10 adet sayıyı teker teker girdiğimizde programımız bize bu sayıların toplamını ve ortalamasını verecektir.

Ornek 2 : Şimdi de yukarda ki orneğimizi aktif bir dizi ile daha etkileşimli hale cevirelim

Bu orneğin uygulamasını da sizlere bırakıyorum.
Birden Fazla Boyutlu Diziler :
VB 'de istenirse birden fazla boyutta dizilerde tanımlanabilir. Orneğin;
Dim Tablo(4,3) As Integer
Dim DersSonucları(3,3,1) As Integer
Yukarda ki tanımlama ile cok boyutlu diziler yaratmış olduk Dikkat ettiyseniz her boyuta ait index numarası birbirinden virgulle ayrılarak diziler boyutlandırılabiliyor. Bu konuyu her zaman yaptığımız gibi bir ornekle acıklayalım

Bileşenleri formumuza yukarda ki gibi yerleştirdikten sonra Matematik dersi icin koyduğumuz 3 tane "Text Box" 'ın adını VB 'nin sol tarafındaki "Properties" Penceresinde ki "(Name)" değerini değiştirerek sırası ile "Matematik1", "Matematik2" ve "Matematik3" yapalım bu işlemi diğer dersler icinde tekrarlayalım daha sonra "Ortalaması" başlıklı Labellerimizin hepsinede "Ortalama" adını verelim bu sırada VB bize "You have already a control named 'Ortalama'. Do you want to create a control array?" diyerek bir kontrol dizisi oluşmak isteyip istemediğimizi soracak bu soruyu "Evet" diye cevaplandırarak bir kontrol dizisi oluşturalım(*) "Ortalama" başlıklı duğmemize cift tıklayarak aşağıda ki kodları yazalım

Yukarda ki orneğimizde derslere ait notlar dizimize aktarılıyor daha sonra ise dizimizde ki notları "For ...Next" dongusu ile kod tekrarı yapmadan ortalamasını alıp bunu Ortalama isimli kontrol dizimizde ki Etiketlerimiz de (Label) goruntuluyoruz. Bu orneğe ilişkin VB kaynak kodlarını buradan indirebilirsiniz
Dizi İcin Sınırlar : VB 'de dizi icin alt ve ust sınırlar belirleyebiliriz bu sınır 0 ve pozitif sayılar olabileceği gibi negatif sayılarda olabilir. Orneğin
[IMG]http://by_netur.*********.com/visualbasicdizeler/1.jpg[/IMG]
LBOUND ve UBOUND Fonksiyonları :
İstenilen bir dizinin belirtilen boyutunun alt ve ust sınırlarının ne olduğunu oğrenmemize yarar orneğin;
[IMG]http://by_netur.*********.com/visualbasicdizeler/2.jpg[/IMG]

VB 'de dizileri inceledik.
Huseyin Biteker
Duzenleyen & Editleyen Baksana59
__________________