Built-in Arrays
Introduction to Computing
Programlamada belirli bir eşiğe ulaştık. Şimdiye kadar kullanıcıdan bir veya birkaç girdi alıp, bunlar üzerinde işlem yaptık ve sonuçları ekrana bastık. Ancak, kullanıcıdan bilinmeyen sayıda girdi alıp, bu girdileri bir yerde saklayıp işlemedik. İşte tam bu noktada diziler (arrays) devreye giriyor.
Neden Dizilere (Arrays) İhtiyaç Duyarız?
Elimizde şöyle bir problem olsun: Kullanıcıdan negatif bir sayı girene kadar sayı alıyoruz ve bu sayılardan en büyüğünü bulmak istiyoruz. Mevcut bilgilerimizle bunu rahatlıkla yapabiliriz. Ancak, eğer kullanıcıdan alınan en büyük üç sayıyı bulmak istersek, işler karmaşıklaşır.
Daha da ötesi, kullanıcıdan 1000 tane sayı alıp, bunların en büyük 10 tanesini bulmak isteyelim. Bu durumda, her sayı için ayrı bir değişken kullanmak mantıksız ve kullanışsız olacaktır. İşte bu noktada, verileri saklamak ve üzerinde işlem yapmak için gömülü dizilere (built-in arrays) ihtiyaç duyarız.
Gömülü Diziler Nedir?
Gömülü diziler, aynı türden birden fazla veriyi tek bir veri yapısı altında saklamamızı sağlayan yapılardır. Bu sayede:
- Verileri düzenli bir şekilde saklayabiliriz.
- Verilere kolayca erişebilir ve işleyebiliriz.
- Bellek kullanımını optimize edebiliriz.
Örneğin, integer türünde bir dizi tanımlayalım:
int sayilar[1000];
Bu kod ile sayilar
adında, elemanlı bir integer dizisi oluşturduk.
Dizilerle Büyük Sayıları Bulmak
Dizileri kullanarak, kullanıcıdan aldığımız sayıları saklayabilir ve bu veriler üzerinde kolayca işlem yapabiliriz.
Örnek Uygulama
Kullanıcıdan -1 girene kadar sayılar alalım ve bu sayılardan en büyük 10 tanesini bulalım.
int sayilar[1000];
int sayac = 0;
int numara;
while (true) {
std::cin >> numara;
if (numara == -1) break;
sayilar[sayac] = numara;
sayac++;
}
std::sort(sayilar, sayilar + sayac, std::greater<int>());
for (int i = 0; i < 10 && i < sayac; i++) {
std::cout << sayilar[i] << std::endl;
}
Bu kodda:
- Kullanıcıdan alınan sayılar
sayilar
dizisinde saklanır. std::sort
fonksiyonu ile dizi büyükten küçüğe sıralanır.- İlk 10 eleman ekrana yazdırılır.
Dizilerin Avantajları
Diziler, verileri yönetmemizi kolaylaştıran birçok avantaja sahiptir:
- Bellek Verimliliği: Aynı türden büyük miktarda veriyi tek bir yapıda saklayarak bellek kullanımını optimize eder.
- Kolay Erişim: Dizinin herhangi bir elemanına, indeksini kullanarak zaman karmaşıklığında erişebiliriz.
- İşlem Kolaylığı: Döngüler ve algoritmalar ile diziler üzerinde toplu işlemler yapabiliriz.
Matematiksel İfadeler ve Diziler
Dizilerle çalışırken bazen matematiksel hesaplamalar yapmamız gerekebilir. Örneğin, dizideki elemanların toplamını bulmak isteyelim:
Burada:
- dizideki eleman sayısını temsil eder.
- dizinin . elemanıdır.
Özet
Gömülü diziler (built-in arrays), programlamada verileri etkin bir şekilde saklamamızı ve işlememizi sağlayan temel yapı taşlarıdır. Kullanıcıdan alınan bilinmeyen sayıda veriyi depolamak, sıralamak ve üzerinde işlem yapmak için diziler vazgeçilmezdir. Bu sayede, daha karmaşık problemleri etkin bir şekilde çözebilir ve kodlarımızı daha organize bir hale getirebiliriz.
Unicourse ile sınavlardan istediğin notları al.
Türkiye'nin en iyi üniversitelerinden 20.000'den fazla öğrenci sınavlarına Unicourse ile hazırlanıyor. Sen de aramıza katıl.