Diziler.

Slides:



Advertisements
Benzer bir sunumlar
STRİNG FONKSİYONLARI.
Advertisements

Bölüm 8 Diziler Dizi Tanımı Dizi Elemanlarına Değer Atama
Göstericiler (Pointers)
Ders İçeriği Bağlantılı Liste İki Yönlü Bağlantılı Liste
FIRAT ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ
BPR152 ALGORİTMA VE PROGRAMLAMA - II
String Diziler(Katarlar)
Diziler.
OOP UYGULAMA 5.
Diziler Dizi, bellekte aynı isim altında toplanmış değişkenler kümesidir. Eğer ki aynı türden veriler grubunu bellekte tutmak gerekirse diziler kullanılır.
Dizi (array) değişkenleri
Elektrik-Elektronik Mühendisliği Bölümü DİZİLER C Programlama Dili Yaz Stajı Cengiz TEPE SAMSUN 2007.
BPR152 ALGORİTMA VE PROGRAMLAMA - II
PROGRAMLAMA DİLLERİNE GİRİŞ Ders 4: Diziler
Diziler(Arrays).
PROGRAMLAMA DİLLERİNE GİRİŞ Ders 6: Sınıflar
7. DİZİLER Diziler birçok değişkene aynı adla ulaşmayı sağlayan bir grup veri yapısıdır. Bir dizi aynı tipte ve aynı adı paylaşan bir grup değişken demektir.
Nesne Tabanlı Programlama Dersi Edirne Kız Teknik ve Meslek Lisesi Hazırlayan : Nuri AVCI
Nesneye Yönelik Programlama
Dizi (ARRAY) Diziler grup halindeki değişkenler olarak tanımlanabilir. Dizi içersinde yüzlerce değişken olabilir. Dizi elemanları index adı verilen sıra.
BPR152 ALGORİTMA VE PROGRAMLAMA - II
NESNEYE YÖNELİK PROGRAMLAMA
DİZİLER (Arrays) Yrd.Doç.dr. Cİhad demİrlİ
DİZİLER.
DELEGATE OOP-UYG.
Erişim Denetimi, Fonksiyon
While Döngüsü Tekrarlama deyimidir. Bir küme ya da deyim while kullanılarak bir çok kez yinelenebilir. Yinelenmesi için koşul sınaması döngüye girilmeden.
İNTERNET PROGRAMCILIĞI I BTP 207 Ders 9. Tek değişkende birden fazla bilgi tutulmak istendiğinde kullanılır. Kullanım şekli: var dizi_adı= new Array(eleman1,
FIRAT ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ DERLEYENLER: Ahmet Can ÇAKIL Ali Murat GARİPCAN Özgür AYDIN Şahin KARA KONTROL : Prof. Dr. Asaf VAROL KONU : LİSTELERE.
Nesneye Yönelik Programlama
C#.NET 5.0 C# .NET 5.0 Eğitimleri Volkan KANAT.
C++ Temelleri C++ genel amaçlı, nesne tabanlı, yüksek seviye programlama dilidir.
Görsel C# Programlama Güz 2009 (6. Hafta).
C#.NET 5.0 C# .NET 5.0 Eğitimleri Volkan KANAT.
BPR152 ALGORİTMA VE PROGRAMLAMA - II Öğr. Gör. Bayram AKGÜL
Chapter 6: Using Arrays.
Diziler Dizi, bellekte aynı isim altında toplanmış değişkenler kümesidir. Eğer ki aynı türden veriler grubunu bellekte tutmak gerekirse diziler kullanılır.
Diziler Adres Kavramı Nesnelerin Adresleri sizeof Operatörü
NESNEYE YÖNELİK PROGRAMLAMA
Kalıtım , Sınıf Asli Ergün.
C PROGRAMLAMA DİZİLER (ARRAYS).
JAVA’DA DİZİLER Dr.Galip AYDIN.
Dizi ve ArrayList.
Ders İçeriği Liste Soyut veri yapısı (ADT)
Bölüm 3: Diziler BTEP 102 – Veri Yapıları ve Programlama
Ders 1: ARRAYLIST Hazırlayan : Yrd. Doç. Dr. Barış GÖKÇE
NESNEYE YÖNELİK PROGRAMLAMA
Bilgisayar Programlama. Tek bir değişken tanımlamak için aşağıdaki gibi bir yazım yeterlidir. int i; Hatırlanacağı gibi bu tarz bir tanımlamada.
Bil 102 Bölüm 6 Diziler.
DİZİLER Arrays.
Ders 2- Veri türleri, Karar ve Döngü Yapıları, Görsel Kontröller
PROGRAMLAMA DİLLERİNE GİRİŞ Ders 4: Diziler
Sıralama. Sıralama, bir dizideki sayısal elemanların küçükten büyüğe veya büyükten küçüğe, sayısal olmayan bir dizideki elemanların ise A’ dan Z’ ye.
Sayısal Analiz / Uygulama
BİLGİSAYAR PROGRAMLAMA Ders 6: Diziler Yrd. Doç. Dr. Altan MESUT Trakya Üniversitesi Bilgisayar Mühendisliği.
PHP ve HTML İnternet Programlama - 2. Koşullu İfadeler ve Döngüler Döngü ya da çevirim diyebileceğimiz, belli şart ve koşullarda istenilen değerleri yapabilmemizi.
Fonksiyonlar ve Diziler
BİLGİSAYAR PROGRAMLAMA Ders 6: Diziler
BİLGİSAYAR PROGRAMLAMA Ders 6: Diziler
C Sharp 9. hafta - dIZILER.
DİZİLER Bellekte sıralı bir şekilde bulunan ve aynı türden bilgilerin saklandığı veri yapısına dizi (array) denir. Örneğin kullanıcıdan 7 kişinin not ortalamasını.
PROGRAMLAMA DİLLERİNE GİRİŞ Ders 4: Diziler
ARDUİNO Arduino Eğitimleri Bölüm 3 Programlama Dili Temelleri
JAVA’DA DİZİLER. Özet  Dizi: belirli sayıda ve aynı veri türünden de ğ işkenlere aynı adla erişilmesini sa ğ layan bir yapıdır.  Dizilerde döngü işlemleri.
YAPISAL PROGRAMLAMA Hafta-7
7. DİZİLER Bir dizi, aynı tipteki elemanların yan yana sıralanışı ile elde edilen bir bilgi kümesidir. Matematikte kullanılan doğal sayılar (1,2,3,..),
NİŞANTAŞI ÜNİVERSİTESİ
MTM216 GÖRSEL PROGRAMLAMA
MTM216 GÖRSEL PROGRAMLAMA
Diziler(Arrays).
Sunum transkripti:

Diziler

Diziler Aynı tipten bir grup verinin aynı değişken isminde bulunmasıdır. Grup içerisindeki verilerin hafızada sıralı olarak bulunduğu farz edilir. C# dilinde dilinde bütün diziler System.Array tipindedir. Yani System.Array sınıfının bütün fonksiyonlarını kullanabilirler.

Diziler Bir örnek olarak, haftanın günlerini bir boyutlu dizi olarak düşünebiliriz. İlk eleman, Pazartesi, son eleman da Pazar günü olacaktır. Diğer bir örnek olarak, bir ayda bulunan günleri, iki boyutlu bir dizi olarak düşünebiliriz. Yatayda haftanın günleri bulunurken, düşeyde hafta sayısı vardır. Bir yıldaki günleri de üç boyutlu bir dizi olarak düşünebiliriz. Haftanın günleri, ilk boyutu oluştururken, ikinci boyut haftaların numarasıdır. Üçüncü boyut da aylardır.

Diziler Tek boyutlu bir dizi, bir değişken ismi ve tip ve köşeli parantez içinde boyutu olarak tanımlanabilir. Örneğin, int[] gun = new int[ 7 ]; gun isminde yedi elemanlı bir boyutlu dizi tanımlar. Dizini tipi int olduğu için elemanları başlangıçta sıfır değerini alacaklardır.

Dizinin Kullanımı Dizi tanımlanınca, dizideki elemanlara dizinin ismi ve köşeli parantez içinde eleman numarasıyla erişilir. Örn. dizi_adi[index] C# dilinde, dizideki ilk eleman 0'ıncı (sıfırıncı) sıradaki elemandır. Örneğin, gun dizisinin en az 0 ve en fazla 6'ıncı elemanlarına erişilebilir. Köşeli parantez içindeki sayılara indeks numarası adı verilir.

İndeks Numarası İnt[] gun = new int[7]; Örnekler: gun[5] = 1; 2 6 4 12 54 -10 Örnekler: gun[5] = 1; if( gun[5] == 4 ) break; gun[5] = gun[6] - 1;

for döngüsü içinde i değişkeninin değeri 0'dan 6'ya kadar gider Örnek for döngüsü içinde i değişkeninin değeri 0'dan 6'ya kadar gider

Dizilere İlk Değer Atama Değişkenler tanımlanırken, ilk değerlerinin verildiğinden bahsetmiştik. Benzer şekilde, dizilere de tanımlandıkları anda değer atanabilir. static void Main(string[] args) { int[] gun = { 0,2,4,6,8,10,11 }; .......... }

Dizilere İlk Değer Atama static void Main(string[] args) { int[] gun = { 0,2,4,6,8,10,11 }; } Derleyici, buradaki sayıları sayar ve [] içindeki değerin 7 olması gerektiğini bulur ve programı int[] gun = new int[7] olarak derler.

Dizilere İlk Değer Atama Eğer, tanımladığımız dizinin elemanlarına başlangıç değeri yüklemiyorsak, o zaman dizinin elemanları tiplerine göre başlangıç değerleri alırlar. Örneğin sayısal ifadeler sıfır değerini alırken, string ve diğer sınıf tipleri “null” eğeri alırlar. Uyarı : string tipindeki bir değişkeninin null değeri içermesinin boş satır anlamına gelmediğini unutmayınız. null ifadesi değişkenin için hafızada henüz herhangi bir yer ayrılmadığını ve bu sebeple bir işlem içerisinde değer olarak kullanılamayacağı anlamına gelir.

Örnek 10 tane double tipinde değer alabilen bir dizi tanımlayın ve içine 1.0 ile 10.0 arasında değerler koyun. Ve 9. ve 0. elemanların değerlerini birbiriyle değiştirin. static void Main(string[] args) { double[] dizi = {1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0}; double gecici; gecici = dizi[9]; dizi[9] = dizi[0]; dizi[0] = gecici; }

Alıştırma 100 tane sayıyı rastsal olarak üreterek bir diziye koyan bir programı yazınız. Programınız, bu dizi içindeki değerlerin en yüksek ve en düşük değerlerini bularak ekrana yazacaktır. Ayrıca, ortalama değerini de hesaplayarak ekranda gösterecektir.

Alıştırma - Çözüm Program en küçük ve en büyük değerleri bulmaktadır. Ortalama bulmayı programa ekleyiniz.

Array.Length() Dizinin uzunluğunu bulmak için kullanılır. Doğrudan dizini adından sonra nokta “.” işaretinden sonra çağrılır. int[] myArray = new int[5]; int len = myArray.Length(); Console.WriteLine(len); Output : 5

foreach Dizi içerisindeki her bir eleman için tek tek ilerleyen döngüdür. for döngüsüne benzemektedir.

foreach foreach ve for döngüleri birbirlerine dönüştürülebilir.

Çok Boyutlu Diziler Birden fazla boyutu olan dizilere çok boyutlu diziler denir. Örneğin iki boyutlu bir dizi satranç tahtasını modellemekte kullanılabilir. İki tip çok boyutlu dizi vardır. Standart diziler Çentikli diziler

Standart Çok Boyutlu Diziler Çok boyutlu dizilerin oluşturulması tek boyutlu dizilere benzer ve onlar kadar kolaydır. Fark köşeli parantezler arasında virgül bulunmasıdır. int [,] sayılar; string [,,] satırlar; Örneğin ikiye üç boyutunda ve string tipinde bir dizi oluşturmak için string[,] dizi = new string[2,3]; yazmak yeterlidir.

Standart Çok Boyutlu Diziler Standart dizilerde her bir boyut için satır ve sütun sayıları eşit olur. Bu sebeple standart diziler matrislere benzetilebilir. 1 2 3 9 20 5 4 6 7 11 dizi

Standart Çok Boyutlu Diziler İki boyutlu bir dizi oluşturup bir döngü içersinde dizinin elemanlarına değerler atayalım.

Çentikli (Jagged) Çok Boyutlu Diziler Dizilerin dizileri olarak ifade edilirler. Dizinin her bir satırı bir başka dizidir. Her bir satırdaki dizi farklı boyut alabileceği için çok boyutlu dizinin matris formunda olması gerekmez. Bu sebeple çentikli (jagged) ismini almıştır.

Çentikli (Jagged) Çok Boyutlu Diziler 4 1 3 1 8 6 7 2 4 9

Çentikli (Jagged) Çok Boyutlu Diziler string [] [] dizi = new string [satir] []; dizi[0] = new string [2]; dizi[1] = new string [3]; dizi[2] = new string [1]; dizi[1] [2] = “çentikli";

Çentikli (Jagged) Çok Boyutlu Diziler 2x3 boyutlu bir dizi oluştur Her bir boyutu farklı uzunlukta dizi olarak tanımla Her bir boyuttaki elemanlara değer ata Değerleri ekrana yazdır.

Çentikli (Jagged) Çok Boyutlu Diziler Her bir boyuttaki elemanlara değer ata Değerleri ekrana yazdır.

Dizi İşlemleri Dizide arama, sıralama

Dizi İşlemleri Dizi işlemleri, programlarda çok sık kullanılan programlama öğelerindendir. IndexOf() LastIndexOf() Sort() Reverse() Array sınıfı yardımıyla kullanılırlar.

IndexOf() - LastIndexOf() IndexOf() : Aramayı baştan başlatarak aranan elemanın kaçıncı sırada olduğunu döndürür. LastIndexOf() : Aramayı sondan başlatarak aranan elemanın kaçıncı sırada olduğunu döndürür. Eğer aranan eleman bulunamazsa -1 döndürür.

Array.IndexOf(), Array.LastIndexOf() Sonuç : 1 Sonuç : 4

Array.Sort() Dizinin elemanlarını küçükten büyüğe sıralar. Sonuç : Ali Mehmet Pınar Zeynep

Array.Reverse() Dizinin eleman sırasını terse çevirir. Sonuç : 45 32 9 5 3 2 1 Not : Array.Sort ve Array.Reverse birlikte kullanılmak zorunda değildir.

Sorun İhtiyacımız olan dizinin boyutunu daha önceden bilmiyorsak ne yapacağız? Ya dizi dinamik olarak genişliyorsa?

Derlemler (Collections) Dizinin boyutu daha önceden bilinmiyorsa kullanılır. Veya dizi dinamik olarak büyüyüp küçülüyorsa kullanılır. Tek boyutludur.

ArrayList Temel derlem tiplerinden birisidir. System.Collections alan adı altında bulunur. Başlangıç boyutu 16 dır ve her büyümede 2 katına çıkar. Verileri object tipinde tutar.

ArrayList Yeni bir ArrayList oluşturmak: ArrayList list = new ArrayList(); Örnek

ArrayList RemoveAt Add Reverse Capacity Sort Clear TrimToSize Count Önemli fonksiyonlar ve özellikler Add Capacity Clear Count IndexOf Insert RemoveAt Reverse Sort TrimToSize

Alıştırma Personel adlarını tutacak bir ArrayList tanımlayınız. Listeye Ahmet, Mehmet, Pınar, Yeşim, Utku, Sinan, Fatma, Ayşe isimlerini ekleyiniz. Listeyi ve boyutunu ekrana yazdırınız. Listeden adı ‘A’ karakteriyle başlayanları siliniz Listeyi harf sırasına göre tersten sıralayınız.

Kod