C++ Diziler
Tabii! C++’ta diziler (arrays), aynı veri tipine sahip birden fazla değeri saklamak için kullanılan veri yapılarıdır. Diziler, bellekte ardışık olarak saklanır ve her eleman bir indeks numarası ile erişilebilir.
1. C++ Dizilerinin Tanımlanması
Bir dizi tanımlamak için şu yapıyı kullanırız:
veri_tipi dizi_adı[eleman_sayısı];
Örneğin:
int sayilar[5]; // 5 elemanlı bir integer dizisi
Bununla birlikte, dizi tanımlanırken boyutu sabit olmak zorundadır.
2. Dizilere Değer Atama ve Erişim
Bir dizi şu şekilde başlatılabilir:
int sayilar[5] = {10, 20, 30, 40, 50};
Eğer tüm değerleri başlatmazsan, kalan elemanlar varsayılan olarak 0 olur:
int dizi[5] = {5, 10}; // İlk iki eleman 5 ve 10, diğerleri 0 olur.
Dizi elemanlarına indeks kullanarak erişebilirsin:
#include <iostream>
using namespace std;
int main() {
int sayilar[3] = {10, 20, 30};
cout << "İlk eleman: " << sayilar[0] << endl;
cout << "İkinci eleman: " << sayilar[1] << endl;
cout << "Üçüncü eleman: " << sayilar[2] << endl;
return 0;
}
📌 Diziler sıfırdan başlar! sayilar[0]
dizinin ilk elemanıdır.
3. Döngülerle Dizi Kullanımı
Dizileri genellikle for döngüsü ile işleriz:
#include <iostream>
using namespace std;
int main() {
int sayilar[5] = {10, 20, 30, 40, 50};
for (int i = 0; i < 5; i++) {
cout << "Eleman " << i << ": " << sayilar[i] << endl;
}
return 0;
}
📌 i < 5
şartı, dizinin boyutundan büyük bir elemana erişmemek için gereklidir.
4. Kullanıcıdan Veri Alarak Dizi Doldurma
Diziyi kullanıcıdan aldığımız verilerle doldurabiliriz:
#include <iostream>
using namespace std;
int main() {
int sayilar[5];
cout << "5 adet sayı giriniz: " << endl;
for (int i = 0; i < 5; i++) {
cin >> sayilar[i];
}
cout << "Girilen sayılar: " << endl;
for (int i = 0; i < 5; i++) {
cout << sayilar[i] << " ";
}
return 0;
}
5. Çok Boyutlu Diziler (Matrisler)
C++'ta çok boyutlu diziler (2D array) şu şekilde tanımlanır:
int matris[2][3] = {
{1, 2, 3},
{4, 5, 6}
};
Matrisin her elemanına çift indeks ile erişilir:
cout << matris[0][1]; // 1. satır, 2. sütun (çıktı: 2)
Döngü ile elemanları yazdırabiliriz:
#include <iostream>
using namespace std;
int main() {
int matris[2][3] = {
{1, 2, 3},
{4, 5, 6}
};
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 3; j++) {
cout << matris[i][j] << " ";
}
cout << endl;
}
return 0;
}
📌 Çok boyutlu diziler, genellikle matematiksel işlemler ve tablolar için kullanılır.
6. Dizi Elemanlarını Sıralama (Bubble Sort Algoritması)
Bir diziyi küçükten büyüğe sıralamak için Bubble Sort algoritmasını kullanabiliriz:
#include <iostream>
using namespace std;
int main() {
int dizi[] = {5, 3, 8, 1, 2};
int n = 5;
// Bubble Sort
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (dizi[j] > dizi[j + 1]) {
swap(dizi[j], dizi[j + 1]);
}
}
}
cout << "Sıralanmış dizi: ";
for (int i = 0; i < n; i++) {
cout << dizi[i] << " ";
}
return 0;
}
📌 swap()
fonksiyonu, iki değişkenin değerlerini yer değiştirir.
7. Dizilerde En Büyük ve En Küçük Elemanı Bulma
Bir dizideki en büyük ve en küçük elemanı bulmak için:
#include <iostream>
using namespace std;
int main() {
int dizi[] = {10, 5, 20, 8, 15};
int n = 5;
int enKucuk = dizi[0];
int enBuyuk = dizi[0];
for (int i = 1; i < n; i++) {
if (dizi[i] < enKucuk)
enKucuk = dizi[i];
if (dizi[i] > enBuyuk)
enBuyuk = dizi[i];
}
cout << "En küçük: " << enKucuk << endl;
cout << "En büyük: " << enBuyuk << endl;
return 0;
}
Özet
✔ Tek boyutlu diziler sabit boyutlu bir veri saklar.
✔ Diziler sıfırdan başlar (dizi[0]
, ilk elemandır).
✔ For döngüsü ile diziler kolayca işlenebilir.
✔ Çok boyutlu diziler (matrisler) tablo benzeri veri yapıları oluşturur.
✔ Bubble Sort algoritması ile dizileri sıralayabiliriz.
✔ Dizilerde en büyük ve en küçük elemanı bulabiliriz.
Yorumlar
Yorum Gönder