Diziler, aynı türde birden fazla veriyi tek bir değişken içinde saklamamıza olanak tanıyan veri yapılarıdır. Tek boyutlu diziler, aynı türden verileri sıralı bir şekilde saklamak için kullanılır.
1. Tek Boyutlu Dizi Tanımlama ve Kullanımı
Bir dizi tanımlanırken veri türü, dizi adı ve eleman sayısı belirtilir:
veri_tipi dizi_adi[eleman_sayisi];
Örneğin, 5 elemanlı bir tamsayı dizisi tanımlayalım:
int sayilar[5]; // 5 elemanlı bir dizi tanımladık
Bu dizi, bellekte ardışık konumlarda saklanır.
2. Diziye Değer Atama
Dizi elemanlarını indeks numarası kullanarak atayabiliriz. Dizi indeksleri 0’dan başlar.
Örnek:
#include <iostream>
using namespace std;
int main() {
int sayilar[5]; // 5 elemanlı bir dizi tanımlandı
sayilar[0] = 10; // İlk elemana 10 atanıyor
sayilar[1] = 20;
sayilar[2] = 30;
sayilar[3] = 40;
sayilar[4] = 50;
cout << "İlk eleman: " << sayilar[0] << endl;
cout << "Son eleman: " << sayilar[4] << endl;
return 0;
}
Çıktı:
İlk eleman: 10
Son eleman: 50
3. Dizi Tanımlarken Değer Atama
Dizi tanımlanırken değerler küme parantezleri {}
içinde verilebilir:
int sayilar[5] = {10, 20, 30, 40, 50};
Eğer dizi boyutu belirtilmezse, derleyici eleman sayısını otomatik belirler:
int sayilar[] = {10, 20, 30, 40, 50}; // 5 elemanlı olduğu otomatik belirlenir
4. Dizinin Elemanlarını Döngü ile Yazdırma
For döngüsü ile dizi elemanlarını ekrana yazdıralım:
#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;
}
Çıktı:
Eleman 0: 10
Eleman 1: 20
Eleman 2: 30
Eleman 3: 40
Eleman 4: 50
5. Kullanıcıdan Veri Alarak Dizi Doldurma
Bir diziye kullanıcıdan giriş alarak değer atayalım:
#include <iostream>
using namespace std;
int main() {
int sayilar[5];
cout << "5 sayı girin:" << endl;
for (int i = 0; i < 5; i++) {
cout << "Eleman " << i + 1 << ": ";
cin >> sayilar[i];
}
cout << "\nGirilen sayılar: ";
for (int i = 0; i < 5; i++) {
cout << sayilar[i] << " ";
}
return 0;
}
6. Dizi İçerisindeki En Büyük ve En Küçük Sayıyı Bulma
Bir dizideki en büyük ve en küçük sayıyı bulan programı yazalım:
#include <iostream>
using namespace std;
int main() {
int sayilar[5] = {15, 8, 22, 3, 10};
int enBuyuk = sayilar[0];
int enKucuk = sayilar[0];
for (int i = 1; i < 5; i++) {
if (sayilar[i] > enBuyuk)
enBuyuk = sayilar[i];
if (sayilar[i] < enKucuk)
enKucuk = sayilar[i];
}
cout << "En büyük sayı: " << enBuyuk << endl;
cout << "En küçük sayı: " << enKucuk << endl;
return 0;
}
Çıktı:
En büyük sayı: 22
En küçük sayı: 3
7. Diziyi Küçükten Büyüğe Sıralama (Bubble Sort)
Bir diziyi küçükten büyüğe sıralayan basit bir Bubble Sort (Kabarcık Sıralama) algoritmasını yazalım:
#include <iostream>
using namespace std;
int main() {
int sayilar[5] = {15, 8, 22, 3, 10};
for (int i = 0; i < 5 - 1; i++) {
for (int j = 0; j < 5 - i - 1; j++) {
if (sayilar[j] > sayilar[j + 1]) {
int temp = sayilar[j];
sayilar[j] = sayilar[j + 1];
sayilar[j + 1] = temp;
}
}
}
cout << "Sıralı dizi: ";
for (int i = 0; i < 5; i++) {
cout << sayilar[i] << " ";
}
return 0;
}
Çıktı:
Sıralı dizi: 3 8 10 15 22
Sonuç
C++’da tek boyutlu diziler, aynı türden birden fazla veriyi yönetmek için oldukça kullanışlıdır. Diziye değer atama, dizi elemanlarını okuma, sıralama ve en büyük/küçük değeri bulma gibi işlemler temel dizilerle kolayca yapılabilir.